Django 0.95 版发行说明 — Django 文档
Django 0.95 版本发行说明
欢迎来到 Django 0.95 版本
这代表了 Django 开发自 2006 年 1 月 0.91 版本以来的重大进步。 此版本中每项更改的详细信息都过于广泛,无法完整列出,但下面提供了摘要。
适用性和 API 的稳定性
这个发行版的目的是为想要在生产级应用中使用 Django 的开发者提供一个稳定的参考点。
但是,这不是 1.0 版本,我们将在 1.0 之前引入进一步的更改。 要清楚地了解框架的哪些区域会在 1.0 之前发生变化(哪些区域将 不会 发生变化),请参阅 api-stability.txt
文件,该文件位于发行版的 docs/ 目录中。
您可能需要使用该文档中标记为“受 API 更改”的某些功能,但只要您同意我们就可以,并且只要您了解 API 将来可能会更改.
幸运的是,Django 的大部分核心 API 在 1.0 版本之前不会改变。 0.95 和 1.0 版本之间的变化可能不会像 0.91 和 0.95 之间那样大。
改变及新特性
此版本的主要更改(对于当前使用 0.91 版本的开发人员)是合并“magic-removal”开发分支的结果。 该分支消除了 Django 代码编写方式中的许多限制,这些限制是 Django 早期(在其开源发布之前)做出的决定的结果。 现在可以编写更自然的、按预期工作的 Pythonic 代码,并且幕后发生的“黑魔法”更少。
除此之外,此版本的另一个主题是可用性的显着提高。 我们在错误消息、文档等方面进行了无数改进,以提高开发人员的生活质量。
在 0.95 版本中引入的新特性和变更包括:
- Django 现在使用更一致和自然的过滤接口来从数据库中检索对象。
- 用户定义的模型、函数和常量现在出现在定义它们的模块命名空间中。 (以前所有东西都被神奇地转移到
django.models.*
命名空间。) - 一些可选的应用程序,例如 FlatPage、站点和重定向应用程序,已经解耦并移入
django.contrib
。 如果您不想使用这些应用程序,则不再需要安装它们的数据库表。 - Django 现在支持管理数据库事务
- 我们添加了编写自定义身份验证和授权后端的功能,以便针对备用系统(例如 LDAP)对用户进行身份验证。
- 通过新的“管理器”API,我们可以更轻松地向模型添加自定义表级函数。
- 现在可以在没有数据库的情况下使用 Django。 这只是意味着该框架不再需要您设置一个工作数据库来提供动态页面。 换句话说,您可以单独使用 URLconfs/views。 以前,该框架要求配置数据库,无论您是否实际使用它。
- 现在覆盖模型上的 save() 和 delete() 方法更加明确和自然,而不是需要挂钩到 pre_save() 和 post_save() 方法挂钩。
- 现在可以在不需要设置环境变量的情况下配置框架的各个部分。 例如,这允许在其他应用程序中使用 Django 模板系统。
- 随着我们扩展了国际化 (i18n) 支持,越来越多的框架部分已经国际化。 Django 代码库,包括代码和模板,现在至少部分被翻译成 31 种语言。 从阿拉伯语到中文,从匈牙利语到威尔士语,现在可以用您的母语使用 Django 的管理站点。
在某些情况下,从 0.91 兼容代码移植到 0.95 代码库所需的更改数量非常重要。 但是,在大多数情况下,它们是合理的常规操作,只需执行一次。 Removing The Magic wiki 页面中描述了必要更改的列表。 还有一个简单的检查表供进行移植操作时参考。
报告问题以及获取帮助
需要帮助解决 Django 的问题? 发行版中的文档也可以在 Django 网站 上获得 在线 。 特别推荐 FAQ 文档,因为它包含许多反复出现的问题。
如需更个性化的帮助,django-users 邮件列表是一个非常活跃的列表,拥有 2,000 多个订阅者,可以帮助您解决任何类型的 Django 问题。 不过,我们建议您先搜索档案,因为许多常见问题都有规律地出现,并且任何特定问题可能已经得到解答。
最后,对于那些喜欢 IRC 提供的更即时反馈的人,irc.libera.chat
上有一个 #django
频道,该频道由来自世界各地的 Django 用户和开发人员定期填充。 友好的人通常在一天中的任何时间都可以提供帮助,或者只是聊天。
感谢使用 Django!
Django 项目始于 2006 年 7 月