Django, пожалуй, самый популярный фреймворк для разработки на Python. Да простят меня «питонисты» и «джависты», если я рискну сравнить важность этого фреймворка для Python c важностью Spring для Java.
Ядро функциональности «зашито» в одноимённом плагине Django. При этом поддержка Django в GigaIDE Pro включает в себя:
мастер создания нового Django-проекта;
мастер Run- и Debug-конфигураций для запуска Django-сервера;
инспекции для контроля соответствия кода спецификации Django;
навигации по элементам Django-приложения;
привязку сущностей Django ORM к таблицам баз данных;
RESTful API, созданные с помощью Django REST Framework, распознаются в графическом HTTP-клиенте GigaIDE;
поддержку шаблонизации через Django Templates Language и также языка Jinja2, включая подсветку синтаксиса и навигацию между кодом и шаблонами.
Поддержка Jinja для работы с Django Templates вынесена в отдельный плагин Jinja. А для навигации между сущностями Django ORM и таблицами должен быть установлен плагин Database.

Базовые функции
Создание и запуск Django-приложения
Создание приложения:
Откройте мастер проектов: File → New Project. На панели слева выберите Django.
На вкладке параметров проекта данные можно оставить без изменений.
После заполнения данных в мастере и нажатия OK выберите, где создать и открыть новый проект: в текущем или новом окне.
Создание Run-конфигурации и запуск приложения (Run-конфигурации от JB Idea Ultimate нельзя использовать):
Откройте мастер создания: Run → Edit Configurations. На панели слева выберите Django.
На вкладке параметров проекта данные можно оставить без изменений.
После заполнения данных конфигурации и нажатия Run, конфигурация будет создана и запущена.
Видеообзор функциональности плагина Django по созданию и запуску Django-приложения:
Обратите внимание на возможность контролировать код на соответствие спецификации Django. Обзор соответствующих функций:
Поддержка Django ORM
Мы уже делали обзор на функциональность GigaIDE по работе с базами данных в этой статье. Поэтому пропустим всё, что касается работы с SQL, гридами и структурой БД, и обсудим функции, доступные для работы с Django.
Это:
визуализация в окне Explorer состава и атрибутов Django ORM-сущностей;
для сущностей Django ORM показываем DDL и примеры данных связанных таблиц;
для таблиц БД показываем связанные Django ORM-сущности.
Настройка совместной работы с БД
Перед настройкой убедитесь, что плагин Database активен и выполнено подключение хотя бы к одному источнику данных. Для настройки:
Откройте окно с фасетами проекта: File → Project Structure → Facets.
Выберите фасет Django.
В настройках фасета укажите необходимый источник данных.
ORM-сущности будут теперь связаны с соответствующими по наименованию доступными таблицами.

Видеообзор функций для работы с ORM-сущностями Django:
Поддержка языков шаблонов для Django
Встроенный в веб-фреймворк Django язык шаблонизации предназначен для создания динамических HTML-страниц. Также поддерживается шаблонизация с помощью Jinja2.
В части поддержки шаблонизации необходимо выделить следующие функции:
подсветка синтаксиса Django Template Language;
подсветка синтаксиса Jinja2;
настройка подсветки внешнего языка, например, HTML;
навигация между кодом и шаблонами;
навигация по иерархии шаблонов.
Управление шаблонными языками требует, чтобы был актуализирован плагин Template Languages.
Управление подсветкой синтаксиса шаблонизации
Для выбора синтаксиса, который будет использован в качестве шаблонного языка, необходимо:
Открыть окно настроек: File → Settings → Languages & Frameworks → Template Languages.
В открывшейся таблице: (a) выбрать базовый тип файла (внешний синтаксис); (б) для выбранного типа файла определить синтаксис языка шаблонов.
Как выглядит работа с HTML через Django Template Language и Jinja2:


Для тех, кто не знаком с Jinja, ссылка на спецификацию здесь.
Краткая инструкция по настройке шаблонизации для Python:
Обучающее видео по работе с GigaIDE вы можете найти на канале GitVerse.
Если у вас есть вопросы или предложения по функциональности, пишите в службу поддержки: https://gitverse.ru/support. Будем рады обратной связи!
Автор: Андрей Слекеничс, PO GIgaIDE
