| 语言 | 格式 | 评分 |
|---|---|---|
英语 | .pdf | 3 |
| 摘要 | ||
文档介绍了Django 3.2.x版本的更新内容,包括新增功能、改进、移除的特性以及弃用时间表。新增功能如对非pytz时区的支持、ForeignKey.validate()改进、Instantiating abstract models引发TypeError等。移除了对PostgreSQL 9.5和MySQL 5.6的支持,弃用了部分模块和函数。文档还详细说明了兼容性问题及未来版本的调整。 | ||
| AI总结 | ||
《Django 3.2.x Documentation》总结如下:
### 核心功能
Django 3.2版本提供了以下核心功能:
- **序列化**:支持数据序列化。
- **会话管理**:处理用户会话。
- **网站地图**:生成网站地图。
- **静态文件管理**:管理静态文件。
- **数据验证**:验证数据完整性。
### 其他核心功能
- **条件内容处理**:根据条件显示内容。
- **内容类型和通用关联**:管理内容类型和通用关系。
- **扁平页面**:管理简单的静态页面。
- **重定向**:处理页面重定向。
- **信号**:定义和处理事件信号。
- **系统检查框架**:检查系统配置。
- **站点框架**:管理多个网站。
- **Unicode支持**:支持Unicode字符。
### Django 开源项目
- **开发流程**:了解Django的开发过程。
- **贡献指南**:如何参与Django项目。
- **代码仓库**:访问Django源代码仓库。
- **安全策略**:了解Django的安全政策。
- **邮件列表**:参与社区讨论。
### 发行说明
#### 新增功能
- **数据库支持**:不再支持PostgreSQL 9.5和MySQL 5.6,最低支持PostgreSQL 9.6和MySQL 5.7。
- **非pytz时区支持**:支持Python 3.9+的`zoneinfo`模块。
- **信号处理**:`ForeignKey.validate()`使用`_base_manager`检查相关实例。
- **密码重置**:重置令牌在用户邮箱更改后失效。
- **缓存操作**:`cache.get_many()`等操作支持`None`值。
- **模型功能**:新增`Model.refresh_from_db()`和`Model.get_deferred_fields()`。
- **模板功能**:`truncatechars_html`过滤器支持HTML内容截断。
- **国际化**:`urlize`过滤器不支持`DECIMAL_SEPARATOR`设置。
- **测试增强**:`assertRedirects()`支持外部URL,`assertNumQueries()`打印失败查询。
#### 弃用与移除
- **弃用API**:移除`SpatiaLiteOperations.proj4_version()`、`django.utils.http.limited_parse_qsl()`等未记录功能。
- **移除非ASCII字符支持**:`slugify()`移除首尾下划线和破折号。
- **移除兼容性导入**:移除`django.contrib.admin.helpers.ACTION_CHECKBOX_NAME`等导入。
- **移除旧功能**:移除`HttpRequest.is_ajax()`、`django-admin.py`入口。
#### 安全改进
- **会话中断**:`SessionMiddleware`使用`SessionInterrupted`异常处理并发会话终止。
- **密码验证**:`make_password()`要求输入为字符串或字节。
- **安全策略**:`SECURE_REFERRER_POLICY`默认为`'same-origin'`。
#### 性能优化
- **缓存机制**:`cache_page()`优先级高于`Cache-Control`头。
- **数据库优化**:新增`Greatest`、`Least`、`Now`等数据库函数。
- **查询性能**:`QuerySet.distinct()`支持引用注释。
#### 其他改进
- **模板功能**:支持`{% now 'j n Y' as varname %}`语法。
- **请求处理**:`WSGIRequest`支持路径以`//`开头。
- **视图与中间件**:`View.error_handlers`支持`TemplateResponse`。
- **日志记录**:新增`django.template`日志记录功能。
### 内部细节
- **数据库后端**:支持功能性索引和覆盖索引。
- **第三方库**:最低支持`mysqlclient`1.4.0、`asgiref`3.2.10。
- **测试框架**:新增`DiscoverRunner`属性,改进`TestCase.setUpTestData()`。
- **缓存后端**:`MemcachedCache`已移除。
- **错误处理**:`BrokenLinkEmailsMiddleware`忽略自动生成的404页面。
### 总结
Django 3.2版本在核心功能、开发流程、安全性和性能优化方面进行了多项改进,新增了对现代数据库和非pytz时区的支持,同时移除了部分旧功能和API。开发者应关注版本兼容性和新功能的使用,以充分利用Django 3.2的优势。 | ||
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余
2192 页请下载阅读 -
文档评分














Django 3.2.x Documentation
Django CMS 3.11.10 Documentation