
Настройки проекта в Django: с чего начать новичку
Разбираемся, что лежит в settings.py у свежего проекта Django 5.x, какие параметры трогать в первую очередь и как не выложить SECRET_KEY в публичный репозиторий.

Разбираемся, что лежит в settings.py у свежего проекта Django 5.x, какие параметры трогать в первую очередь и как не выложить SECRET_KEY в публичный репозиторий.

Собираем страницу каталога с фильтрацией по цене, категории и наличию на Django 5.x с помощью django-filter. От установки до рабочей формы — примерно за час.

Пользователь выбирает три чекбокса, а страница отдаёт 400 SQL-запросов и грузится четыре секунды. Разбираем, как собрать фильтруемый каталог на Django без N+1 и с честной пагинацией.

Каталог товаров с фильтрами по цене, категории и наличию на Django. Разберём, что подготовить заранее и как собрать рабочий фильтр без лишних запросов к базе.

Как настроить обработку multiple-загрузки файлов в Django 5.x: где ломается стандартная форма, что положить в MEDIA_ROOT и почему request.FILES.getlist важнее самого поля.

Настроим форму с множественной загрузкой файлов в Django 5.x: HTML-атрибут multiple, обработка request.FILES.getlist и сохранение на диск. Займёт около 30 минут.

Настраиваем форму, которая принимает сразу несколько файлов, сохраняет их в модель и валидирует по размеру и типу. Django 5.x, около 30–40 минут работы.

За 20–30 минут вы замените обычное текстовое поле в админке Django на визуальный редактор с форматированием: заголовки, списки, ссылки и жирный текст будут вставляться кнопками, а не руками.

К концу инструкции у вас будет сайт на Django, работающий на VPS через Gunicorn и Nginx, доступный по вашему домену. На всё уйдёт около полутора-двух часов, если не считать регистрацию домена.

Как заменить простое textarea в админке Django на визуальный редактор текста с форматированием. Настройка занимает около 15 минут на пакете django-ckeditor-5.

Поле TextField в админке Django — это голый textarea без форматирования. Разбираем, как подключить редактор, где он ломается и чем платить за каждый вариант.

Пользователь кликает по заголовку колонки, и таблица переупорядочивается. Разбираем, как сделать это в Django без библиотек, где ломается наивный подход и чем платит SQL-инъекция через order_by.