Примечания к выпуску 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 отдельно. Раньше платформа требовала настройки базы данных независимо от того, использовали ли вы ее на самом деле.
Теперь более явно и естественно переопределять методы
save()иdelete()в моделях, вместо необходимости подключаться к хукам методовpre_save()иpost_save().Отдельные части платформы теперь можно настроить без необходимости установки переменной среды. Это позволяет использовать, например, систему шаблонов 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 г.