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