Django 1.11.1 版本发行说明¶
2017 年 5 月 6 日
Django 1.11.1 添加了一个小功能,并修复了 1.11 中的若干错误。
允许在 PostgreSQL 上禁用服务器端游标¶
Django 1.11 中对 QuerySet.iterator()
的更改使其在 PostgreSQL 上使用服务器端游标,这会阻止在事务池模式下使用 PgBouncer 运行 Django。要重新允许这个行为,请在 DATABASES
的设置中使用 DISABLE_SERVER_SIDE_CURSORS
设置。
有关更多讨论,请参阅 事务池和服务器端游标。
漏洞修复¶
迁移现在会尊重
Index
的name
参数。如果你在 Django 1.11 中创建了一个具有名称的索引,makemigrations
将创建一个迁移来重新创建具有正确名称的索引 (#28051)。修复了在
ArrayField
上使用__icontains
查找时的崩溃问题 (#28038)。修复了在
EmailMessage
的attachments
参数中使用 2 元组时崩溃的问题 (#28042)。修复了当
QuerySet.filter()
引用OneToOneField
主键的名称时导致的崩溃 (#28047)。修复了在 HTML 调试页面中出现空的 POST 数据表格,而不是显示 "No POST data" (#28079)。
恢复了
BoundField
中没有任何choices
的情况下被评估为True
(#28058)。防止在
_session_cache
未填充的情况下使SessionBase.cycle_key()
丢失会话数据 (#28066)。修复了
ReadOnlyPasswordHashWidget
的布局(在管理员的用户更改页面中使用) (#28097)。允许在具有自定义
ModelIterable
子类的管理器上进行预取调用 (#28096)。修复了
contrib.auth
管理员中的更改密码链接,适用于el
、es_MX
和pt
翻译 (#28100)。恢复了在使用
multiple_input.html
模板的小部件的<ul>
中的class
属性的输出。这修复了使用admin.HORIZONTAL
的ModelAdmin.radio_fields
(#28059)。修复了
BaseGeometryWidget.subwidgets()
中的崩溃 (#28039)。修复了在 ORM 查询执行中,当
cursor.execute()
失败并且随后的cursor.close()
也失败时重新引发异常 (#28091)。修复了一个回归问题,其中
CheckboxSelectMultiple
、NullBooleanSelect
、RadioSelect
、SelectMultiple
和Select
的本地化选项值 (#28075)。修正了无序查询集分页警告的堆栈级别 (#28109)。
修复了回归问题,当模型使用
ForeignKey.to_field
时,导致__in
子查询查找的查询不正确 (#28101)。修复了在重写
django.views.static.directory_index()
模板时的崩溃问题 (#28122)。修复了在表单集
min_num
验证中的回归问题,当未更改具有初始数据的表单时 (#28130)。准备好支持
cx_Oracle
6.0 (#28138)。更新了
contrib.postgres
中的SplitArrayWidget
,使用基于模板的小部件渲染 (#28040)。修复了在覆盖现有
attrs
时导致的BaseGeometryWidget.get_context()
崩溃 (#28105)。阻止了
AddIndex
和RemoveIndex
对模型状态进行更改 (#28043)。阻止了在将
Field.db_index
更改为False
时,迁移从Meta.indexes
中删除数据库索引 (#28052)。修复了在具有分组和非分组选项的表单字段中选择顺序的退化问题 (#28157)。
修复了在使用
save_as_new
时导致的BaseInlineFormSet._construct_form()
崩溃 (#28159)。修复了在保存子模型后,多表继承父模型上未正确设置
Model._state.db
的退化问题 (#28166)。已更正从数据库中检索的
ArrayField(CITextField())
值的返回类型 (#28161)。修复了在获取嵌套的
Prefetch
对象中的关系时导致的QuerySet.prefetch_related()
崩溃问题 (#27554)。在使用
contrib.gis
时,防止隐藏 GDAL 错误,如果它未安装的话 (#28160)。 (自 Django 1.11 起,它是一个必需的依赖项。)修复了使用外键的父模型作为查找值时导致
__in
查找失败的退化问题 (#28175)。