Набор дополнений к любому проекту на Django | OTUS
⚡ Открываем подписку на курсы!
Проходите параллельно 3 онлайн-курса в месяц по цене одного.
Подробнее

Курсы

Программирование
Flutter Mobile Developer Подготовка к сертификации Oracle Java Programmer (OCAJP)
-8%
Супер-интенсив «СУБД в высоконагруженных системах»
-18%
Алгоритмы и структуры данных
-12%
Web-разработчик на Python
-11%
Архитектура и шаблоны проектирования
-14%
Team Lead
-15%
iOS-разработчик. Базовый курс
-23%
Разработчик на Spring Framework Python Developer. Basic
-16%
C# ASP.NET Core разработчик
-18%
Разработчик программных роботов (RPA) на базе UiPath и PIX
-6%
Android-разработчик. Базовый курс
-10%
C++ Developer. Professional Разработчик C# AWS для разработчиков Software Architect Unity Game Developer. Basic Разработчик голосовых ассистентов и чат-ботов Backend-разработка на Kotlin React.js Developer Разработчик Node.js Нереляционные базы данных Супер - интенсив по паттернам проектирования Супер - интенсив по Kubernetes Advanced Fullstack JavaScript developer
Инфраструктура
Супер-интенсив «СУБД в высоконагруженных системах»
-18%
PostgreSQL
-10%
IoT-разработчик
-12%
Administrator Linux. Professional
-11%
Базы данных
-19%
Administrator Linux.Basic
-18%
Разработчик программных роботов (RPA) на базе UiPath и PIX
-6%
Сетевой инженер AWS для разработчиков Software Architect Reverse-Engineering. Professional CI/CD VOIP инженер Супер-практикум по работе с протоколом BGP Супер - интенсив по паттернам проектирования Супер - интенсив по Kubernetes
Специализации Курсы в разработке Подготовительные курсы
+7 499 938-92-02

Набор дополнений к любому проекту на Django

WebDev_Deep_LAST_23.07_Site.png

Давайте рассмотрим самое полезное, что есть в составе модуля django-extensions – набора полезных дополнений к любому проекту на Django.

shell_plus, продвинутая версия manage.py shell

От обычной команды отличается тем, что автоматически импортирует все модели и необходимые функции для работы с ORM (например, Q и Avg). Рекомендуется использовать вместе с ipython, тогда будет автодополнение, подсветка и сохранение истории при перезапуске интерпретатора. Работает даже с кастомными пользовательскими моделями: если у вас переопределена модель User, shell_plus импортирует правильную.

runserver_plus, продвинутая версия manage.py runserver

Продвинутость заключается в том, что под капотом используется Werkzeug для рендеринга страницы ошибки в случае пятисотых статусов. Вместо привычной жёлтой страницы ошибки Django с трейсбеком и значением некоторых переменных, показывается версия Werkzeug, которая позволяет запускать любой код на Python в тех фреймах, в которых произошли ошибки. Прямо в браузере! Радикально ускоряет поиск ошибки.

Набор базовых моделей

Например, ActivatorModel со статусом и датой активации или TimeStampedModel с полями created и modified. Случаи очень частые, поэтому и модели очень полезные. Всё равно их аналоги есть в любом боевом проекте на Django.

Набор расширений для админки

Например, ForeignKeyAutocompleteAdmin, который позволяет превратить любое поле ForeignKey в админке не просто в выпадашку, а в поле с автодополнением и поиском по указанным полям.

Как видите, эти утилиты достаточно универсальны и пригодятся почти в любом проекте, поэтому django-extensions – один из модулей, которые можно сразу устанавливать на старте проекта.

Есть вопрос? Напишите в комментариях!

Не пропустите новые полезные статьи!

Спасибо за подписку!

Мы отправили вам письмо для подтверждения вашего email.
С уважением, OTUS!

Автор
0 комментариев
Для комментирования необходимо авторизоваться