Содержание
Django берут не ради страниц как таковых, а ради того, что за ними: данных, расчётов, кабинетов и обмена с другими системами. Сам фреймворк на Python бесплатный, лицензия BSD, а всё, что написано под проект, принадлежит вам по договору. Поэтому создание сайта на Django — заказная разработка со своей ценой: старт дороже, чем на CMS, а после запуска нужен программист, который знает проект.
Сначала модель данных, потом экраны
Разработка на Django начинается не с дизайна, а с вопроса, какие сущности живут в вашем бизнесе и как они связаны. Клиент, договор, объект, платёж, заявка — каждая становится моделью, а связи между ними — полями и внешними ключами. Как только модели описаны, фреймворк строит по ним админку, и вы видите свои данные в рабочем интерфейсе уже на этапе прототипа. Тогда дешевле всего заметить, что у договора бывает несколько объектов, а у клиента — несколько контактных лиц.
Компании в Самаре, которая годами вела клиентов в таблицах и 1С, обычно нужен не просто новый ресурс, а одно место для этих данных, где у каждого сотрудника свои права. С такой базы и стоит начинать, а публичные страницы добавлять поверх неё.
Страницы и сервис — в одном коде
На Django публичная часть и служебная живут в одном проекте и одной базе. Страницы услуг берут цены и условия из тех же таблиц, по которым менеджер ведёт заказы, поэтому цифры на витрине не расходятся с внутренними. Не нужно синхронизировать CMS с отдельным сервисом и следить, чтобы обмен между ними не сломался.
Если интерфейс кабинета сложный, его можно собрать на React или Vue, а Django оставить сервером API. Решаем это на этапе техзадания: отдельный фронтенд удобнее для насыщенных интерфейсов, но это ещё одна часть проекта, которую придётся поддерживать.
Python рядом с продуктом: отчёты и нейросети
Главный довод за Django, а не за PHP-фреймворк, — язык. Выгрузки для бухгалтерии, расчёт стоимости по сложным правилам, классификация входящих обращений, ответы по базе знаний пишутся на Python прямо в проекте, без отдельного сервиса на другом языке. Для YandexGPT и GigaChat есть Python-библиотеки, поэтому пилот с нейросетью подключается к уже существующим данным и правам доступа.
Что стоит учесть до заказа
Прежде чем заказать разработку на Django, ответьте на три вопроса. Есть ли у вас логика, которой нет в готовых системах? Кто будет развивать проект через год — ваш программист или подрядчик по договору поддержки? Готовы ли вы платить за сервер, обновления и резервные копии так же регулярно, как за хостинг обычного ресурса? Если на первый вопрос ответ «нет», разумнее взять CMS: разработка сайта на Django окажется переплатой за возможности, которыми никто не воспользуется.
Жизнь после запуска
У каждой версии фреймворка есть срок поддержки, и сопровождение начинается с плана обновлений. Сюда же входят фоновые задачи: с версии 6.0 в Django есть единый интерфейс фоновых задач, но встроенные бэкенды рассчитаны на разработку и тесты — на рабочем сервере нужен сторонний бэкенд и отдельный процесс-исполнитель, за которым нужно следить. Письма, выгрузки и обмен с 1С должны работать и тогда, когда разработчика рядом нет, поэтому мониторинг и журнал ошибок настраиваем до выкладки, а не после первой жалобы.
Первую версию стоит ограничить тем, без чего процесс не работает. Так система быстрее попадёт к пользователям, а следующие функции будут опираться на то, как сотрудники с ней работают на деле, а не на догадки.

