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

*2018 年 8 月 31 日*

Django 2.1.1 修复了 2.1 版本中的一些错误。

## 漏洞修复

- 修复了 `QuerySet.update_or_create()` 中的竞态条件，可能导致数据丢失的问题 ([#29499](https://code.djangoproject.com/ticket/29499))。
- 修复了一个回归问题，即如果字典包含非字符串值，`QueryDict.urlencode()` 会崩溃 ([#29627](https://code.djangoproject.com/ticket/29627))。
- 在 Django 2.0 中修复了一个回归问题，即如果数据库存在并且用户没有创建数据库的权限，则在 PostgreSQL 上使用 `manage.py test --keepdb` 失败 ([#29613](https://code.djangoproject.com/ticket/29613))。
- 在 Django 2.0 中修复了一个回归问题，即组合 `Q` 对象和 `__in` 查找与列表一起使用会崩溃 ([#29643](https://code.djangoproject.com/ticket/29643))。
- 修复了 `DurationField` 的 "溢出" 错误消息的翻译失败问题 ([#29623](https://code.djangoproject.com/ticket/29623))。
- 修复了一个回归问题，即如果用户没有对使用 `TabularInline` 的模型具有 'add' 权限，管理员更改表单会崩溃 ([#29637](https://code.djangoproject.com/ticket/29637))。
- 修复了一个回归问题，即当在抽象基础模型上声明了 `GenericRelation` 时，未设置 `related_query_name` 反向访问器 ([#29653](https://code.djangoproject.com/ticket/29653))。
- 修复了测试客户端在处理结构化内容类型后缀时对请求数据字典的 JSON 序列化问题 ([#29662](https://code.djangoproject.com/ticket/29662))。
- 在用户具有 'view' 权限的情况下，使管理员更改视图在 POST 后重定向到 changelist 视图 ([#29663](https://code.djangoproject.com/ticket/29663))。
- 修复了管理员更改视图在只有查看权限的用户访问时，如果表单具有额外的表单字段，会导致崩溃的问题 ([#29682](https://code.djangoproject.com/ticket/29682))。
- 在 Django 2.0.5 中修复了一个回归问题，即在将带有 `extra()` 的查询集与 `union()`, `difference()` 或 `intersection()` 结合使用后，调用 `QuerySet.values()` 或 `values_list()` 会因列不匹配而导致崩溃 ([#29694](https://code.djangoproject.com/ticket/29694))。
- 修复了如果 `InlineModelAdmin.has_add_permission()` 不接受 `obj` 参数会导致崩溃的问题 ([#29723](https://code.djangoproject.com/ticket/29723))。
