Примечания к выпуску Django версии 0.95¶
Добро пожаловать в выпуск Django 0.95.
Это представляет собой значительный прогресс в разработке Django с момента выпуска версии 0.91 в январе 2006 года. Детали каждого изменения в этой версии были бы слишком обширными, чтобы перечислять их полностью, но их краткое изложение представлено ниже.
Пригодность и стабильность API¶
Этот выпуск призван предоставить стабильную точку отсчета для разработчиков, желающих работать над приложениями производственного уровня, использующими Django.
Однако это не версия 1.0, и до версии 1.0 мы внесем дополнительные изменения. Для четкого представления о том, какие области фреймворка изменятся (а какие не изменятся) до версии 1.0, см. файл api-stability.txt, который находится в каталоге docs/ дистрибутива.
Возможно, у вас возникнет необходимость использовать некоторые функции, помеченные в этом документе как «API могут быть изменены», но мы согласны с этим, если это устраивает вас, и если вы понимаете, что API могут измениться в будущем.
К счастью, большинство основных API Django не изменятся до версии 1.0. Вероятно, между версиями 0,95 и 1,0 не будет такого большого изменения, как между 0,91 и 0,95.
Изменения и новые возможности¶
Основные изменения в этом выпуске (для разработчиков, которые в настоящее время используют выпуск 0.91) являются результатом слияния ветки разработки «удаление магии». Эта ветка устранила ряд ограничений в написании кода Django, которые были следствием решений, принятых на заре существования Django, до его выпуска с открытым исходным кодом. Теперь можно писать более естественный, Pythonic-код, который работает должным образом, и за кулисами происходит меньше «черной магии».
Помимо этого, еще одной основной темой этого выпуска является резкое повышение удобства использования. Мы внесли бесчисленные улучшения в сообщения об ошибках, документацию и т. д., чтобы улучшить качество жизни разработчиков.
Новые функции и изменения, представленные в версии 0.95, включают:
Django теперь использует более последовательный и естественный интерфейс фильтрации для извлечения объектов из базы данных.
Пользовательские модели, функции и константы теперь появляются в пространстве имен модуля, в котором они были определены. (Раньше все волшебным образом переносилось в пространство имен
django.models.*.)Некоторые дополнительные приложения, такие как приложения FlatPage, Sites и Redirects, были отделены и перемещены в django.contrib. Если вы не хотите использовать эти приложения, вам больше не нужно устанавливать их таблицы базы данных.
В Django теперь есть поддержка управления транзакциями базы данных.
Мы добавили возможность писать собственные механизмы аутентификации и авторизации для аутентификации пользователей в альтернативных системах, таких как LDAP.
Мы упростили добавление в модели пользовательских функций уровня таблицы с помощью нового API-интерфейса «Менеджер».
Теперь можно использовать Django без базы данных. Это просто означает, что платформа больше не требует, чтобы у вас была рабочая база данных, настроенная только для обслуживания динамических страниц. Другими словами, вы можете просто использовать URLconfs/views отдельно. Раньше платформа требовала настройки базы данных независимо от того, использовали ли вы ее на самом деле.
It’s now more explicit and natural to override save() and delete() methods on models, rather than needing to hook into the pre_save() and post_save() method hooks.
Отдельные части платформы теперь можно настроить без необходимости установки переменной среды. Это позволяет использовать, например, систему шаблонов Django внутри других приложений.
Все больше и больше частей платформы интернационализируются, поскольку мы расширили поддержку интернационализации (i18n). Кодовая база Django, включая код и шаблоны, теперь переведена, по крайней мере частично, на 31 язык. От арабского до китайского, от венгерского до валлийского — теперь можно использовать сайт администрирования Django на своем родном языке.
Количество изменений, необходимых для переноса кода, совместимого с версией 0.91, в базу кода 0.95, в некоторых случаях является значительным. Однако по большей части они достаточно рутинны и их нужно выполнить только один раз. Список необходимых изменений описан на вики-странице Removing The Magic. Существует также простой контрольный список для справки при выполнении операции переноса.
Отчеты о проблемах и получение помощи¶
Нужна помощь в решении проблемы с Django? Документация в дистрибутиве также доступна онлайн на сайте Django. Особенно рекомендуется использовать документ FAQ, поскольку он содержит ряд вопросов, которые возникают снова и снова.
Для получения более персонализированной помощи список рассылки django-users — это очень активный список, насчитывающий более 2000 подписчиков, которые могут помочь вам решить любую проблему Django. Однако мы рекомендуем сначала поискать в архивах, поскольку многие распространенные вопросы возникают с некоторой регулярностью, и на любую конкретную проблему, возможно, уже есть ответы.
Наконец, для тех, кто предпочитает более быструю обратную связь, предлагаемую IRC, есть канал #django на irc.libera.chat, который регулярно заполняется пользователями и разработчиками Django со всего мира. Дружелюбные люди обычно доступны в любое время суток — чтобы помочь или просто поболтать.
Спасибо за использование Джанго!
Команда Django, июль 2006 г.