---
title: "Django 1.7.1 版本发行说明"
version: 6.0
locale: zh-hans
source: https://docs.djangoproject.com/zh-hans/6.0/releases/1.7.1/
canonical: https://djangodocs.dev/zh-hans/6.0/releases/1.7.1/
---
# Django 1.7.1 版本发行说明

*2014 年 10 月 22日*

Django 1.7.1 修复了 1.7 版本中的一些错误。

## 漏洞修复

- 允许引用相关的多对多字段在管理员中 ([#23604](https://code.djangoproject.com/ticket/23604))。
- 如果您尝试在未创建 `contenttypes` 表的情况下迁移应用程序，将会显示更加有帮助的错误消息（[#22411](https://code.djangoproject.com/ticket/22411)）。
- 修改了迁移依赖算法，以避免可能的无限递归。
- 修复了当 `flush` 错误消息包含 Unicode 字符时出现的 `UnicodeDecodeError` ([#22882](https://code.djangoproject.com/ticket/22882))。
- 重新引入了缺失的 `CHECK` SQL 子句，这些子句在某些后端上在不使用迁移时被省略了 ([#23416](https://code.djangoproject.com/ticket/23416))。
- 修复了在迁移中对 `type` 对象的序列化 ([#22951](https://code.djangoproject.com/ticket/22951))。
- 允许内联和隐藏引用管理员字段 ([#23431](https://code.djangoproject.com/ticket/23431))。
- 现在，如果被装饰的对象无法自动导入，`@deconstructible` 装饰器将引发 `ValueError` ([#23418](https://code.djangoproject.com/ticket/23418))。
- 修复了 `inlineformset_factory()` 错误消息中的拼写错误，导致崩溃 ([#23451](https://code.djangoproject.com/ticket/23451))。
- 恢复了使用 [`ABSOLUTE_URL_OVERRIDES`](/zh-hans/6.0/ref/settings/#std-setting-ABSOLUTE_URL_OVERRIDES) 与 `'auth.User'` 模型的能力 ([#11775](https://code.djangoproject.com/ticket/11775))。作为副作用，该设置现在会为出现在 `ABSOLUTE_URL_OVERRIDES` 中但没有定义 `get_absolute_url()` 的任何模型添加一个 `get_absolute_url()` 方法。
- 避免了在应用程序加载过程中掩盖一些 `ImportError` 异常 ([#22920](https://code.djangoproject.com/ticket/22920))。
- 空的 `index_together` 或 `unique_together` 模型选项不再导致无限迁移 ([#23452](https://code.djangoproject.com/ticket/23452))。
- 修复了在 `contrib.sitemaps` 中的崩溃，如果 `lastmod` 返回的是一个 `date` 而不是一个 `datetime` ([#23403](https://code.djangoproject.com/ticket/23403))。
- 允许迁移与具有相同最后一部分的 `app_label` （例如 `django.contrib.auth` 和 `vendor.auth`）一起工作 ([#23483](https://code.djangoproject.com/ticket/23483))。
- 恢复了深度复制 `F` 对象的能力 ([#23492](https://code.djangoproject.com/ticket/23492))。
- 已添加威尔士语（`cy`）和多个中国区域（`zh_CN`、`zh_Hans`、`zh_Hant` 和 `zh_TW`）的格式。已修复马其顿语的格式（删除尾部点号，[#23532](https://code.djangoproject.com/ticket/23532)）。
- 在迁移生成的 SQL 中添加了对约束名称的引用，以防止在名称中使用大写字符时崩溃 ([#23065](https://code.djangoproject.com/ticket/23065))。
- 修复了具有自引用多对多字段（`ManyToManyField('self')`）的模型重命名问题 ([#23503](https://code.djangoproject.com/ticket/23503))。
- Added the [`get_extra()`](/zh-hans/6.0/ref/contrib/admin/#django.contrib.admin.InlineModelAdmin.get_extra),
  [`get_max_num()`](/zh-hans/6.0/ref/contrib/admin/#django.contrib.admin.InlineModelAdmin.get_max_num), and
  [`get_min_num()`](/zh-hans/6.0/ref/contrib/admin/#django.contrib.admin.InlineModelAdmin.get_min_num) hooks to
  [`GenericInlineModelAdmin`](/zh-hans/6.0/ref/contrib/contenttypes/#django.contrib.contenttypes.admin.GenericInlineModelAdmin)
  ([#23539](https://code.djangoproject.com/ticket/23539)).
- 使 `migrations.RunSQL` 不再需要百分号转义。现在与 `cursor.execute()` 保持一致 ([#23426](https://code.djangoproject.com/ticket/23426))。
- 使 [`TEST`](/zh-hans/6.0/ref/settings/#std-setting-DATABASE-TEST) 字典中的 `SERIALIZE` 条目可用 ([#23421](https://code.djangoproject.com/ticket/23421))。
- 修复了迁移中的错误，该错误阻止了对具有自定义主键的未管理模型的外键约束 ([#23415](https://code.djangoproject.com/ticket/23415))。
- 为 MySQL GIS 后端添加了 `SchemaEditor`，以便在具有迁移的应用程序中创建空间索引 ([#23538](https://code.djangoproject.com/ticket/23538))。
- 为 Oracle GIS 后端添加了 `SchemaEditor`，以便在具有迁移的应用程序中创建空间元数据和索引 ([#23537](https://code.djangoproject.com/ticket/23537))。
- 在生成迁移时将 `related_name` 模型字段选项强制转换为 Unicode，以生成在 Python 2 和 3 中都可用的迁移 ([#23455](https://code.djangoproject.com/ticket/23455))。
- 修复了 `MigrationWriter` 以处理没有导入的内置类型 ([#23560](https://code.djangoproject.com/ticket/23560))。
- 修复了 `ErrorList` 上的 `deepcopy` ([#23594](https://code.djangoproject.com/ticket/23594))。
- 使 [`admindocs`](/zh-hans/6.0/ref/contrib/admin/admindocs/#module-django.contrib.admindocs) 中的浏览视图详细信息的视图检查 URL 中指定的视图是否存在于 URL 配置中。以前，可以从 Python 路径中导入任意包。这不被认为是一个安全问题，因为 `admindocs` 只对工作人员用户可访问 ([#23601](https://code.djangoproject.com/ticket/23601))。
- 修复了在请求中包含非 ASCII 字符时，`AdminEmailHandler` 中的 `UnicodeDecodeError` 崩溃 ([#23593](https://code.djangoproject.com/ticket/23593))。
- 修复了相关管理器上缺失 `get_or_create` 和 `update_or_create` 导致 `IntegrityError` 的问题 ([#23611](https://code.djangoproject.com/ticket/23611))。
- 在 Python 3 上，使 [`urlsafe_base64_decode()`](/zh-hans/6.0/ref/utils/#django.utils.http.urlsafe_base64_decode) 返回正确的类型（字节字符串） ([#23333](https://code.djangoproject.com/ticket/23333))。
- [`makemigrations`](/zh-hans/6.0/ref/django-admin/#django-admin-makemigrations) 现在可以序列化带有时区信息的值 ([#23365](https://code.djangoproject.com/ticket/23365))。
- 在从字段中移除空约束以防止现有 NULL 行上的 IntegrityError 时，为迁移问题添加了提示 ([#23609](https://code.djangoproject.com/ticket/23609))。
- 修复了 `ModelAdmin.list_filter` 中的通用关联问题 ([#23616](https://code.djangoproject.com/ticket/23616))。
- 恢复了 Python 3 上 SMTP 后端的 RFC 兼容性 ([#23063](https://code.djangoproject.com/ticket/23063))。
- 修复了解析包含无效内容的 Cookie 时崩溃的问题 ([#23638](https://code.djangoproject.com/ticket/23638))。
- 系统检查框架现在在类方法 `Model.check()` 不可达时引发错误 **models.E020** ([#23615](https://code.djangoproject.com/ticket/23615))。
- 在前一个测试运行的不干净退出事件中，Oracle 测试数据库创建现在会删除测试用户 ([#23649](https://code.djangoproject.com/ticket/23649))。
- 修复了 [`makemigrations`](/zh-hans/6.0/ref/django-admin/#django-admin-makemigrations) 以检测对 [`Meta.db_table`](/zh-hans/6.0/ref/models/options/#django.db.models.Options.db_table) 的更改 ([#23629](https://code.djangoproject.com/ticket/23629))。
- 修复了在向 Django 测试客户端提供空数据字符串时的回归问题 ([#21740](https://code.djangoproject.com/ticket/21740))。
- 修复了 [`makemessages`](/zh-hans/6.0/ref/django-admin/#django-admin-makemessages) 中的回归问题，其中静态文件意外被忽略 ([#23583](https://code.djangoproject.com/ticket/23583))。
