Django 1.9.1 版本发行说明
2016 年 1 月 2 日
Django 1.9.1 修复了 1.9 版本中的一些错误。
漏洞修复
- 修复了使用
DummyCache
后端的BaseCache.get_or_set()
方法(#25840)。 - 修复了
FormMixin
中的回归问题,导致表单被验证两次(#25548, #26018)。 - 修复了嵌套
ArrayField
的系统检查崩溃问题(#25867)。 - 修复了在向后迁移
SeparateDatabaseAndState
操作时的状态错误问题(#25896)。 - 修复了
CommonMiddleware
中的回归问题,导致If-None-Match
检查始终返回 HTTP 200(#25900)。 - 在 PostgreSQL 上使用
AlterField
时,修复了在CharField
和TextField
上分别缺少varchar/text_pattern_ops
索引的问题(#25412)。 - 修复了管理界面中删除确认页面上相关对象的摘要计数(#25883)。
- 在 Python 2 上由
startapp
创建的默认apps.py
中添加了from __future__ import unicode_literals
(#25909)。如果你希望你自己使用 Django 1.9 创建的apps.py
文件在 Python 2 和 Python 3 上都能正常工作,可以将这一行添加到你自己的apps.py
文件中。 - 修复了在跨关系查询时防止
QuerySet.delete()
在 MySQL 上崩溃的问题(#25882)。 - 修复了对
QuerySet.values()
的零长度切片的评估问题(#25894)。 - 修复了在使用
AlterModelManagers
操作时的状态错误问题(#25852)。 - 修复了带有可空字段的
TypedChoiceField
更改检测问题(#25942)。 - 修复了自定义管理模板中不带有
data-admin-utc-offset
属性的body
标签中的不正确的时区警告问题(#25845)。 - 修复了一个导致无法使用不在 Django 的默认语言列表 (LANGUAGES) 中的语言的回归问题(#25915)。
- 在启动
runserver
时避免将一些异常(如无效的INSTALLED_APPS
设置)隐藏在AppRegistryNotReady
后面(#25510)。这个回归问题出现在 1.8.5 版中,是在修复 #24704 时的副作用,不小心没有将修复应用到stable/1.9.x
分支。 - 修复了
migrate --fake-initial
对于多对多表的检测问题(#25922)。 - 恢复了管理界面的
list_editable
添加和更改按钮的功能(#25903)。 - 修复了对于
ForeignObject
的isnull
查询查找问题(#25972)。 - 修复了在管理员中的回归问题,该问题忽略只读字段中的换行符而不是将它们转换为
<br>
(#25465)。 - 修复了
SingleObjectMixin.get_context_object_name()
中的不正确对象引用问题(#26006)。 - 当
loaddata
不加载任何数据时,使其跳过禁用和启用数据库约束(#23372)。 - 恢复了
contrib.auth
哈希算法与py-bcrypt
的兼容性(#26016)。 - 修复了在
annotate()
和order_by()
后使用QuerySet.values()/values_list()
并包含一个不在order_by()
中的字段后导致崩溃的问题(#25316)。