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

*2015 年 5 月 20 日*

Django 1.8.2 修复了 1.8.1 中的一个安全问题和几个错误。

## 修复了 `cached_db` 后端中的会话刷新问题

Django 1.8 中对于 `cached_db` 会话后端中的 `session.flush()` 的更改错误地将会话键设置为空字符串而不是 `None`。空字符串被视为有效的会话键，并且会相应地设置会话 cookie。任何在其会话 cookie 中具有空字符串的用户都将使用相同的会话存储。`session.flush()` 被 `django.contrib.auth.logout()` 调用，并且更严重的是，当用户切换帐户时也会被 `django.contrib.auth.login()` 调用。如果用户已登录并且再次登录到不同的帐户（而不注销），则会刷新会话以避免重复使用。在会话被刷新后（其会话键变为 `''`），帐户详细信息会设置在会话中，并且会话会被保存。任何在其会话 cookie 中具有空字符串的用户现在将登录到该帐户。

## 漏洞修复

- 修复了对模板引擎别名唯一性的检查问题 ([#24685](https://code.djangoproject.com/ticket/24685))。
- 修复了在查询中重复使用相同的 `Case` 实例时发生崩溃的问题 ([#24752](https://code.djangoproject.com/ticket/24752))。
- 修正了 `Case` 表达式的联接升级。例如，使用 `Case` 表达式对查询进行注释可能会意外地过滤结果 ([#24766](https://code.djangoproject.com/ticket/24766))。
- 修复了表达式中否定的 `Q` 对象。例如，像 `Case(When(~Q(friends__age__lte=30)))` 这样的情况试图生成一个子查询，导致崩溃 ([#24705](https://code.djangoproject.com/ticket/24705))。
- 修复了当查询的模型具有自引用外键时，在 MySQL 上生成不正确的 GROUP BY 子句的问题 ([#24748](https://code.djangoproject.com/ticket/24748))。
- 实现了 `ForeignKey.get_db_prep_value()`，使得指向 [`UUIDField`](/zh-hans/6.0/ref/models/fields/#django.db.models.UUIDField) 的 `ForeignKey` 以及具有 `UUIDField` 字段主键的模型之间的继承可以正确工作（[#24698](https://code.djangoproject.com/ticket/24698),\`:ticket:24712）。
- 修复了 `HStoreField` 的 `isnull` 查询 ([#24751](https://code.djangoproject.com/ticket/24751))。
- 修复了在迁移中删除包含外键的联合索引（`unique_together` 或 `index_together`）时在 MySQL 上发生崩溃的问题 ([#24757](https://code.djangoproject.com/ticket/24757))。
- 修复了在使用 [`SESSION_COOKIE_DOMAIN`](/zh-hans/6.0/ref/settings/#std-setting-SESSION_COOKIE_DOMAIN) 时删除会话 cookie 的问题 ([#24799](https://code.djangoproject.com/ticket/24799))。
- 在 PostgreSQL 上，当未授予 `postgres` 数据库的访问权限时，Django 现在会在通常需要“无数据库”连接时回退到默认数据库 ([#24791](https://code.djangoproject.com/ticket/24791))。
- 修复了在与其他字段一起使用时，`contrib.admin` 的 `ForeignKey` 小部件的显示问题 ([#24784](https://code.djangoproject.com/ticket/24784))。
