Django 1.8.6 版本发行说明

2015 年 11 月 4 日

Django 1.8.6 为 Python 3.5 添加了官方支持,并修复了 1.8.5 中的几个错误。

漏洞修复

  • 修复了导致 ModelChoiceField 忽略其查询集上的 prefetch_related() 的回归问题(#25496)。
  • 如果支持,允许在 SQLite 测试数据库名称中使用 “mode=memory”(#12118)。
  • 修复了在 ForeignKey 指向抽象模型时导致系统检查崩溃的问题(#25503)。
  • 修复了在不同模型上具有相同字段名称、指向相同模型并且禁用了它们的反向关系时导致查询不正确的问题,这些模型上有多个 ManyToManyField#25545)。
  • 允许在 RawSQL 注释上进行过滤操作(#25506)。
  • 在 SQLite 上使 Concat 数据库函数成为幂等的(#25517)。
  • 避免在使用无效的 INSTALLED_APPS 设置启动 runserver 时出现令人困惑的堆栈跟踪。这个回归问题出现在 1.8.5 中,是修复 #24704 的副作用(#25510)。
  • 使延迟加载的模型使用其代理模型的 _meta.apps 进行缓存和检索(#25563)。这可以防止在数据迁移中使用 QuerySet.defer() 生成的任何模型泄漏到测试和应用程序代码中。
  • 修复了在 strictly_above PostGIS 查询中名称拼写错误的问题(#25592)。
  • 修复了在使用无效值时 contrib.postgres.forms.SplitArrayFieldIntegerField 导致崩溃的问题(#25597)。
  • 当同一目录中存在 Django 和 South 迁移时,添加了一个有用的错误消息(#25618)。
  • 修复了 URLValidator 中的回归问题,该问题允许在域部分中有连续的点的 URL 通过(例如 http://example..com/)(#25620)。
  • 修复了使用 GenericRelationBaseModelAdmin.to_field_allowed 导致崩溃的问题(#25622)。