搜索

epub文档 Django 4.2.x Documentation

3.16 MB 3305 页 0 下载 128 浏览 0 评论 0 收藏
语言 格式 评分
英语
.epub
3
摘要
文档详细介绍了Django 4.2版本的更新内容,包括对psycopg 3的支持、新增的字段和表注释功能、移除的旧功能以及未来的计划。Django 4.2被指定为长期支持版本,支持Python 3.8至3.11,并计划结束对Django 3.2的支持。文档还提到了一些已知问题和未来版本的注意事项。
AI总结
# Django 4.2.x 文档总结 ## 核心内容概述 ### 1. 弃用功能与移除项 Django 4.2版本移除了以下功能: - `BaseUserManager.make_random_password()` 方法 - `model’s Meta.index_together` 选项 - `length_is` 模板过滤器 - `django.contrib.auth.hashers.SHA1PasswordHasher`、`UnsaltedSHA1PasswordHasher` 和 `UnsaltedMD5PasswordHasher` - `django.contrib.postgres.fields.CICharField`、`CIEmailField` 和 `CITextField` - `CIText` 混合类 - `BaseGeometryWidget` 的 `map_width` 和 `map_height` 属性 - `SimpleTestCase.assertFormsetError()` 方法 - `TransactionTestCase.assertQuerysetEqual()` 方法 - 对 JSONField 和相关查找/表达式的编码 JSON 字符串字面值的支持 - 对 `Signer` 和 `TimestampSigner` 的位置参数支持 - `DEFAULT_FILE_STORAGE` 和 `STATICFILES_STORAGE` 设置 ### 2. 新增功能 #### a. **PostgreSQL 支持** - 引入对 `psycopg3` 版本 3.1.8 或更高版本的支持,`django.db.backends.postgresql` 已兼容 `psycopg2` 和 `psycopg3`。 #### b. **数据库注释** - 新增 `Field.db_comment` 和 `Meta.db_table_comment` 选项,允许在数据库表和字段上添加注释。 #### c. **Jython 支持** - 增加对即将发布的 Jython 2.5 版本的兼容性。 #### d. **通用关系** - `django.contrib.contenttypes` 中的类支持在表单和管理界面中使用通用关系。 #### e. **强制 INSERT/UPDATE 操作** - 模型的 `save()` 方法新增参数,允许强制执行 `INSERT` 或 `UPDATE` 操作。 #### f. **缓存中间件重构** - `CacheMiddleware` 分解为两个独立的中间件类,分别处理缓存插入和读取操作,提供更高的灵活性。 #### g. **评论系统重构** - 通过 Google Summer of Code 项目,`django.contrib.comments` 经过重大重构,提升了灵活性和可定制性。 ### 3. 已知问题与修复 - **Django 4.2.2 修复内容**: - 修复了 Oracle 数据库上的 `TextField()/BinaryField()` 查询问题。 - 恢复 `JSONField` 子类的 `get_prep_value()` 调用。 - 修复 `QuerySet.defer()` 和 `QuerySet.only()` 在特定字段上的崩溃问题。 - 修复 `makemigrations --update` 不尊重 `--name` 选项的问题。 - 修复无序查询编译的性能回归。 - 修复样式表链接错误和查询集在 SQLite 上的序列化问题。 ### 4. 版本兼容性 - **Python 兼容性**:支持 Python 3.8、3.9、3.10 和 3.11。 - **长期支持 (LTS)**:Django 4.2 是 LTS 版本,将提供至少三年的安全更新,而 Django 3.2 的支持将于 2024 年 4 月结束。 ### 5. 已移除的模块与功能 - �移除 `django.utils.timezone.utc` 别名。 - 移除 `django.forms/default.html` 和 `django/forms/formsets/default.html` 模板。 - 移除 `Expression.asc()` 和 `Expression.desc()` 中的 `nulls_first` 和 `nulls_last` 参数。 ### 6. 其他重要信息 - **发布说明**:文档包含从 Django 2.2 到 4.2 的所有版本的发布说明,供升级参考。 - **弃用策略**:遵循 Django 的弃用政策,移除的功能将在未来的版本中逐步淘汰。 --- ### 总结 Django 4.2 版本主要聚焦于功能改进、性能优化和弃用旧功能,同时引入了对新数据库后端和开发模式的支持。开发者在升级时需注意处理已弃用的功能,并确保代码与新版本兼容。
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余 3298 页请下载阅读 -
文档评分
请文明评论,理性发言.