Какая существует проблемы: Слишком много времени уходит на первоначальную настройку Django проекта. Существует много технологий которые уже стали неотъемлемыми зависимостями для Django проектов. Например:
-
Docker -
Nginx -
Gunicorn -
PostgreSQL -
Файлы с переменными окружения
-
REST API -
React(или другой фронтовой фреймворк) -
Makefile
Первоначально настраивать их вручную занимает 20 минут (если не допускать ошибок). ЭТО НЕПРИЕМЛЕМО.
Поэтому был создан это репозиторий в котором хранятся шаблоны для проекта и приложения Django. Для рендеринга шаблонов используется стандартный шаблонизатор проекта Django
Вот пример замены стандартных шаблонов Django на наши, будем использовать виртуальное окружение venv, и Linux. (Этот скрипт можно выполнить за одну команду)
# Создаем папку со всем проектом, И переходим в неё dir="ИмяПроекта"; mkdir ${dir} && cd ${dir}; # Копируем этот репозиторий. git clone https://github.com/denisxab/django-start-pack.git .; # На всякий случай выходим из ВО если мы в нем находимся. deactivate; # Создаем виртуальное окружение, Актируем его, устанавливаем `Django`. python -m venv venv && . ./venv/bin/activate && pip install Django; # Создаем переменную с версий текущего ВО `Python`. py_version=$(python -c 'import sys; print(".".join(map(str, sys.version_info[:2])))'); # Удаляем стандартные шаблон проекта и приложения `Django`. rm -rf ./venv/lib/python${py_version}/site-packages/django/conf/project_template ./venv/lib/python${py_version}/site-packages/django/conf/app_template; # Копируем шаблоны из репозитория в ВО. cp -r project_template ./venv/lib/python${py_version}/site-packages/django/conf/ && cp -r app_template ./venv/lib/python${py_version}/site-packages/django/conf/ && # Удаляем ненужные файлы/папки. rm -rf project_template app_template .git; # Показать результат `Django` шаблона tree ./venv/lib/pythonn${py_version}/site-packages/django/conf/project_template && tree ./venv/lib/pythonn${py_version}/site-packages/django/conf/app_template;
Теперь создадим проект как обычно, только укажем дополнительные расширения для шаблонизатора.
django-admin startproject <ИмяПроекта> -e py,env,dockerignore,gitignore,json;
Чтобы начать разрабывать ваш проект вам достаточно выполнить
cd <ИмяПроекта>; # Первоначально настраиваем проект make init_proj; # Запуска `webpack` make webpack_run; # Запускам `Django` сервер (запустите в новом окне) make dj_run;
ссылка на оригинал статьи https://habr.com/ru/articles/595843/
Добавить комментарий