# Django 5.2.8 documentation

# Django 1.11.2 版本发行说明

2017 年 6 月 1 日

Django 1.11.2 在 1.11.1 的基础上增加了一个小功能，并修复了一些错误。此外，还整合了来自 Transifex 的最新字符串翻译。

## 次要特性

新的 `LiveServerTestCase.port` 属性重新允许绑定到特定端口的用例，这是自 Django 1.11 中的 绑定到零端口 更改后的情况。

## 漏洞修复

- 已添加对 GDAL 2.1 和 2.0 的检测，并移除了不支持的版本 1.7 和 1.8 的检测 (#28181)。

- 已更改 `contrib.gis`，如果未安装 `gdal`，则引发 `ImproperlyConfigured` 而不是 `GDALException`，以允许第三方应用程序捕获该异常 (#28178)。

- 修复了在无效的 IPv6 URL 上导致 `django.utils.http.is_safe_url()` 崩溃的问题 (#28142)。

- 修复了导致模型字段的 pickle 操作崩溃的退化问题 (#28188)。

- 修复了 `django.contrib.auth.authenticate()` 当多个身份验证后端不接受位置参数的 `request` 时的问题 (#28207)。

- 修复了对 PostgreSQL 上索引字段排序的内省问题 (#28197)。

- 修复了在保存子模型后，多表继承父模型上未正确设置 `Model._state.adding` 的退化问题 (#28210)。

- 允许 `DjangoJSONEncoder` 序列化 `django.utils.deprecation.CallableBool` (#28230)。

- 放宽了在 Django 1.11 中添加到 `QuerySet.get_or_create()` 和 `update_or_create()` 的 `defaults` 参数中字段的验证，以允许重新设置可设置的模型属性 (#28222)。

- 修复了在 Python 2 上，如果 `InvalidPage` 消息包含非 ASCII 字符，则导致 `MultipleObjectMixin.paginate_queryset()` 崩溃的问题 (#28204)。

- 防止 `Subquery` 添加不必要的 `CAST`，导致生成无效的 SQL (#28199)。

- 已更正在 Windows 上检测 GDAL 2.1 的问题 (#28181)。

- 使基于日期的通用视图在收到超出范围的日期时返回 404 而不是崩溃 (#28209)。

- 修复了 `file_move_safe()` 在将文件移动到 CIFS 挂载点时崩溃的退化问题 (#28170)。

- 将 Django 1.11 中添加的 `ImageField` 文件扩展名验证从模型字段移到表单字段，以允许存储没有扩展名的图像的用例 (#28242)。