Релиз web-фреймворка Django 2.1
4 августа 2018 года
Представлен релиз web-фреймворка Django 2.1, написанного на языке Python и предназначенного для разработки веб-приложений. Ветка Django 2.1 отнесена к категории выпусков с обычным сроком поддержки и будет получать обновления до декабря 2019 года. LTS-ветка 1.11 будет поддерживаться до апреля 2020 года. Поддержка ветки 2.0 продлится до апреля 2019 года. Следующим LTS-выпуском станет релиз 2.2.
Ключевые улучшения:
- В Meta.default_permissions для моделей представлено новое полномочие "view", автоматически создаваемое при запуске миграции (django-admin migrate). Полномочие "view" позволяет предоставить пользователям только доступ на чтение к моделям в интерфейсе администратора. Для проверки наличия нового полномочия предложена функция ModelAdmin.has_view_permission().
- Внесена большая порция небольших улучшений в интерфейс администратора (модуль django.contrib.admin). Предоставлена возможность переопределения сайта администратора и замены базовых шаблонов. Библиотека jQuery обновлена до версии 3.3.1.
Добавлены методы ModelAdmin.get_deleted_objects() и ModelAdmin.delete_queryset() для настройки процесса удаления. Добавлен атрибут и ModelAdmin.sortable_by и метод ModelAdmin.get_sortable_by() для управления сорктировкой содержимого отдельных столбцов. Для действий в интерфейсе администратора теперь могут задаваться полномочия, ограничивающие доступность функций для определённых пользователей;
- Бэкенд для кэширования в памяти переведён на применение стратегии
LRU (least-recently-used) для вытеснения в порядке давности обращения к записям. В API доступа к кэшу добавлен метод touch() для обновления времени обращения к записи;
- Добавлена функция get_supported_language_variant() для получения информации о поддерживаемых языках при локализации;
- Для шаблонов представлен новый фильтр json_script для безопасного вывода объектов Python в формате JSON, готовом для использования в коде на JavaScript;
- Добавлена настройка CSRF_COOKIE_SAMESITE для установки флага SameSite в CSRF cookies;
- В команду inspectdb добавлена опция "--include-views", позволяющая создать модели для представлений БД;
- В средства миграции добавлена поддержка сериализации объектов functools.partialmethod и загрузки миграций из файлов .pyc;
- Прекращена поддержка Python 3.4, MySQL 5.5 и PostgreSQL 9.3. В Django 2.1 поддерживаются только Python 3.5, 3.6 и 3.7, MySQL 5.6+, PostgreSQL 9.4+.
Источники
править
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.