- 博客(398)
- 资源 (2)
- 问答 (1)
- 收藏
- 关注
原创 10. Django Auth认证系统
10.1 内置User实现用户管理字段类型说明10.2 发送邮件实现密码找回10.3 模型User的扩展与使用
2024-05-09 19:22:33 383
原创 9. Django Admin后台系统
9.1 走进Admin9.2 源码分析ModelAdmin9.3 Admin首页设置9.4 Admin的二次开发9.4.1 函数get_readonly_fields()9.4.2 设置字段样式9.4.3 函数get_queryset()9.4.4 函数formfield_for_foreign
2024-05-06 22:48:24 919
原创 7. Django 模型与数据库
7.1 模型定义与数据迁移7.1.1 定义模型7.1.2 开发个人的ORM框架7.1.3 数据迁移7.1.4 数据导入与导出7.2 数据表关系7.2.1 一对一表关系学生id(主键)姓名班级教室学生信息id(主键)年龄联系电话外键
2024-04-22 15:01:38 526
原创 Django数据导出与导入问题
行: python manage.py loaddata data.json 的常见错误:* 1. UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte* 2. raise JSONDecodeError("Unexpected UTF-8 BOM (decode using utf-8-sig)",
2024-04-17 04:09:46 377
原创 6. Django 深入模板
标签是对模板上下文进行控制输出, 它是以{% tag %}表示的, 其中tag是标签的名称,Django内置了许多模板标签, 比如{% if %} (判断标签), {% for %} (循环标签) 或 {% url %} (路由标签)等.内置的模板标签可以在Django源码(\django\template\defaulttags.py)里找到定义过程,每个内置标签都有功能注释和使用方法, 本书只列举常用的内置标签, 如表6-1所示.表6-1 常用的内置标签标签描述{% for %}
2024-04-15 21:41:33 858
原创 3. Django 初探路由
3.1 路由定义规则3.1.1 Django 2以上版本路由定义3.1.2 Django 1.X路由定义3.1.3 路由变量的设置3.1.4 正则表达式的路由定义3.2 命名空间与路由命名3.2.1 命名空间namespace3.2.2 路由命名name3.3 路由的使用方式3.3.1 在模板中使用路由
2024-04-08 13:17:10 593
原创 1. Django建站基础
网站(Website)是指在因特网上根据一定的规则, 使用HTML (Hyper Text Markup Language, 超文本标记语言)等工具制作并用于展示特定内容相关网页的集合.简单地说, 网站是一种沟通工具, 人们可以通过网站来发布自己想要公开的资讯, 或者利用网站来提供相关的网络服务,也可以通过网页浏览器来访问网站, 获取自己需要的资讯或者享受网络服务.在早期, 域名(Domain Name), 空间服务器与程序是网站的基本组成部分, 随着科技的不断进步, 网站的组成日趋复杂,
2024-04-05 20:11:36 1361
原创 25.11 MySQL 视图
在MySQL中, 视图(View)是一个虚拟的表, 其内容由查询定义.视图并不存储数据, 它只包含定义视图的SQL语句, 也因此视图占用的内存空间相对较少.当查询视图时, MySQL会执行这些SQL语句并返回结果.视图在多种场景下都非常有用, 以下是一些建议何时使用视图的情形:* 1. 简化复杂的SQL查询: 当你有一个复杂的SQL查询, 并且这个查询被多个地方重复使用, 你可以将这个查询定义为一个视图.这样, 每次需要这个查询的结果时, 只需要简单地查询这个视图即可.
2024-04-03 18:01:44 601
原创 25.10 MySQL 约束
1.2 约束类型1.3 查看约束2. 非空约束2.1 特性2.3 添加非空约束2.4 删除非空约束3. 唯一约束3.1 特性3.2.1 单列唯一3.2.2 联合唯一3.3 添加唯一约束3.4 删除唯一约束4. 主键约束4.1 特性4.2.1 单列主键4.2.2 联合主键学生表(student)课程表(courses)关联表
2024-04-02 13:52:47 1137
原创 25.9 MySQL 数据类型
JSON(JavaScript Object Notation): 是一种轻量级的数据交换格式, 其简洁且清晰的层次结构使其成为理想的数据交换语言.它不仅易于人类阅读和编写, 同时也易于机器解析和生成, 从而有效地提升了网络传输效率.JSON能够将JavaScript对象中的一组数据转换为字符串, 使得这些字符串可以在网络或程序之间轻松传递,并在需要时还原为各编程语言所支持的数据格式.从MySQL 5.7开始, 已经支持JSON数据类型, 这为在数据库中存储结构化数据提供了更大的灵活性.
2024-03-26 20:57:05 571
原创 25.7 MySQL 数据库和表的基本操作
1.2 数据库系统的层次结构1.3 标识符命名规则1.4 MySQL字段命名对象年龄区间数据类型字节表示范围2. 数据类型2.1 整数类型整数类型描述范围.2.2 浮点型浮点型数据描述范围2.3
2024-03-22 17:19:09 421
原创 25.4 MySQL 函数
在编程中, 函数是一种组织代码的方式, 用于执行特定任务.它是一段可以被重复使用的代码块, 通常接受一些输入(参数)然后返回一个输出.函数可以帮助开发者将大型程序分解为更小的, 更易于管理的部分, 提高代码的可读性和可维护性.函数在编程语言和SQL中都扮演着非常重要的角色.以下是对函数的一些详细解释:* 1. 代码重用和模块化: 函数允许我们将一段常用的代码块封装起来, 并在需要时多次调用.这避免了代码的重复, 并使得代码结构更清晰, 更易于阅读和维护.
2024-03-08 01:10:12 478
原创 Navicat的使用
Navicat: 是一款流行的数据库管理和开发工具, 它支持多种数据库系统,如: MySQL, MariaDB, MongoDB, SQL Server, Oracle, PostgreSQL 等.Navicat通过提供直观的图形用户界面(GUI), 使用户能够更轻松地执行各种数据库操作, 而无需记住复杂的SQL命令.以下是Navicat的一些主要功能和特点:* 1. 可视化操作Navicat提供了丰富的图形界面,
2024-02-26 01:00:42 333
原创 3. 第三章 函数
将前面一节的代码的片整合起来, 整个程序如下:>>>...这个程序包含两个函数定义: print_hello和repeat_print.函数定义的执行方式和其它语句一样, 不同的是, 执行后会创建函数对象, 函数体里面的语句并不会立即运行,而是等到函数被调用时才执行. 函数定义不会产生任何输出.必须先创建一个函数, 才能运行它, 换言之, 函数定义必须在函数调用之前先运行.将调用函数的语句, 移动到首行, 让函数的调用会先于函数定义执行.运行程序并查看会有什么样的错误信息.
2024-01-21 09:02:50 371
原创 1. 程序之道
程序: 是一组定义如何进行计算的指令集合.编程语言中基本指令:* 1. 输入: 从键盘, 文件或者其它设备中获取数据.* 2. 输出: 将数据显示到屏幕中, 保存到文件中, 或者发送到网络上.* 3. 数学: 进行基本数学操作, 如: 加减乘除.* 4. 条件执行: 检查某种条件的状态执行相应的代码.* 5. 重复: 重复执行某个动作, 往往在重复中有一些变化.
2024-01-21 08:56:01 414
原创 13. 第13章 接口, 协议和抽象基类
13.1 类型图13.2 本章新增内容13.3 两种协议13.4 利用鸭子类型编程13.4.1 Python喜欢序列13.4.2 使用猴子补丁在运行时实现协议13.4.3 防御性编程和’快速失败’13.5 大鹅类型13.5.1 子类化一个抽象基类13.5.2 标准库中的抽象基类13.5.3 定义并使用一个抽象基类13.5.4 抽象基类句法详解1
2024-01-21 08:53:04 398
原创 12. 序列的特殊方法
本章将使用组合模式实现vector类, 而不使用继承.向量的分量存储在浮点数数组中, 而且还将实现不可变扁平序列所需的方法.不过, 在实现序列方法之前, 要先实现一个基准, 确保Vector类与前面定义的Vector2d类兼容(没必要兼容的地方除外).*----------------------------------------三维以上向量的应用程序---------------------------------*谁需要1000维向量呢?信息检索领域经常使用N维向量(N是很大的数),
2024-01-21 08:50:32 381
原创 8. 第八章 函数中的类型提示
各种文献对类型概念的定义不一. 这里, 假定类型是一系列值和一系列可操作这些值的函数.实践中, 最好把受支持的操作当作类型的关键特征. ④(4: 除了Enum类型, Python未提供控制类型可取值的句法.例如, 使用类型提示不能把Quantity定义为1和1000之间的整数, 也不能把AirportCode定义为3个字母的组合.NumPy提供了uint8.nt16和其他面向机器的数值类型, 但是在Python标准库中,
2024-01-21 08:45:16 441
原创 7.第七章 函数是一等对象
不仅Python函数是真正的对象, 而且任何Python对象都可以表现得像函数.为此, 只需实现实例方法__call__.示例7-8实现的BingoCage类的实例可使用任何可迭代对象构建,内部存储一个随机排序的元素列表, 调用实例从中取出一个元素. ③(注3: 有现成的random.choice可用, 为什么还要定义BingoCage类呢?choice函数可能会多次返回同一个元素, 因为被选中的元素不从指定的容器中删除.
2024-01-21 08:44:15 362
原创 5.第五章 数据类构建器
5.1 本章新增内容5.2 数据类构建器概述5.2.1 主要功能5.3 典型的具名元组5.4 带类型的具名元组5.5 类型提示入门5.5.1 运行时没有作用5.5.2 变量注解句法5.5.3 变量注解的意义1. 研究一个typing.NamedTuple类2. 研究一个使用daataclass装饰类5.6 @dataclass详解
2024-01-21 08:36:56 403
原创 3.第三章 字典和集合
映射的基本API非常丰富.表3-1列出了dict, 以及collections模块中两个常用变体defaultdict和OrderDict实现的方法.表3-1: 映射类型dict, collections.defaultdict和collections.OrderDict实现的方法(简单起见, 省略了object实现的方法, [...]表示可选参数)方法 dict defaultdicr orderdDict 含义d.clear() • • • 删除所有项d.copy() • • • 浅拷贝。
2024-01-21 08:34:30 419
TA创建的收藏夹 TA关注的收藏夹
TA关注的人