Как Создать Проект Django Из Шаблона

И снова здравствуйте! Специально для студентов курса «Веб-разработчик на Python» Мы подготовили еще один интересный перевод.

Как создать проект Django из шаблона

Шаблон проекта Django — это естественный способ решения проблем, возникающих, когда формат проекта Django по умолчанию больше не соответствует требованиям.

Сегодня в этом уроке вы узнаете, как создать собственный проект на основе шаблона.



Что такое шаблон проекта в Django?

Одной из малоизвестных особенностей Django является возможность создания проекта на основе шаблона, то есть произвольной структуры каталогов.

Это полезно, когда формата проекта по умолчанию уже недостаточно (а его определенно будет недостаточно, если вы хотите развернуть свое решение в рабочей среде, поверьте мне), или когда вы достигаете точки, когда вы используете одни и те же конфигурации снова и снова.

снова для многих проектов Django. Шаблон проекта Django — это не что иное, как проект с предопределенной настраиваемой структурой каталогов, которую вы можете создать самостоятельно за считанные минуты.

Пример популярного шаблона Django: Джанго-печенье .

Джанго-печенье имеет широкий спектр функций и конфигураций, готовых к автономному развертыванию в рабочей среде.

Это именно тот способ, который вы можете использовать для создания практически любого нового проекта Django. Тем не менее, Джанго-печенье иногда это излишне, особенно для новичков, поэтому перед его использованием создайте более простой шаблон Django, который может лучше помочь вам понять основы.

В следующих разделах вы узнаете, как создать свой собственный шаблон.



Как создать свой собственный шаблон проекта Django

Для начала создайте виртуальную среду Python в выбранной вами папке и установите Django (обратите внимание, что это четыре отдельные команды):
  
  
  
  
  
  
  
  
  
  
   

mkdir project-name && cd $_ python3 -m venv venv source venv/bin/activate pip install django

Затем создайте проект Django с помощью:

django-admin startproject project_name .



Обратите внимание на название, оно должно быть именно название проекта .

После этого откройте проект в редакторе.

(Обратите внимание, что в нашем примере я использовал название проекта для папки и имени проекта).

Теперь вам нужно пройтись по каждому файлу проекта и все заменить название проекта на {{ название проекта }} (однострочная команда sed подойдет).

Файлы, которые вам нужно будет изменить: менеджер.

py settings.py wsgi.py asgi.py Как вы могли догадаться, переменная {{ название проекта }} - это заполнитель.

Например, в менеджер.

py вам нужно будет заменить следующее:

# manage.py def main(): os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'project_name.settings') try: # omit

На этом:

# manage.py def main(): os.environ.setdefault('DJANGO_SETTINGS_MODULE', '{{ project_name }}.

settings') try: # omit

В wsgi.py вы измените это:

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'project_name.settings')

К следующему:

os.environ.setdefault('DJANGO_SETTINGS_MODULE', '{{ project_name }}.

settings')

И так далее.

Кроме того, вы можете создать любую конфигурацию или, что еще лучше, проанализировать настройки Django в отдельные файлы для разработки, тестирования и производства.

Вы найдете пример Здесь .

Прежде чем перейти к следующему шагу, обязательно удалите виртуальную среду из шаблона проекта.



Как создать проект Django на основе собственного шаблона

Теперь, когда у вас есть шаблон проекта, вы можете его использовать.

Для этого создайте новую виртуальную среду Python в другой папке и установите Django:

mkdir new-django-project && cd $_ python3 -m venv venv source venv/bin/activate pip install django

Теперь вместо того, чтобы просто делать Джанго-админ запуска проекта , мы передадим флаг --шаблон для установки из нашего шаблона.

Допустим, вы создали шаблон в своем домашнем каталоге.

~/имя-проекта , вы будете делать:

django-admin startproject --template ~/project-name new_django_project .



Эта команда создаст новый проект Django на основе шаблона.

(Обратите внимание, что в этом примере я использовал новый проект Джанго как внешнюю папку и новый_django_project для названия проекта).

Теперь вам может быть интересно, можно ли использовать, например, удаленный шаблон из репозитория GitHub. Да, конечно!

Как создать проект Django из удаленного шаблона

Флаг --шаблон Для начать проект может принять URL-адрес в качестве удаленного источника.

Это означает, что вы можете создать проект Django из удаленного шаблона, например:

django-admin startproject --template https://github.com/username/repo/archive/master.zip new_django_project .





Бонус: шаблоны для всего.

Помимо создания шаблонов файлов, связанных с Django, вы можете сделать то же самое для любого другого файла в проекте.

Представьте, что вам нужно выполнить развертывание в Heroku там, где вам нужно.

Прокфайл .

Передавать Прокфайл через систему шаблонов таким образом, чтобы {{ название проекта }} заменено фактическим названием проекта, вы можете сделать начать проект с флагом --имя .



django-admin startproject --template https://github.com/username/repo/archive/master.zip --name=Procfile new_django_project .



Убедитесь, что в Прокфайл есть заполнитель для название проекта :

release: python manage.py migrate web: gunicorn -w 3 {{ project_name }}.

wsgi --log-file -



Источники

Чтобы создать сложный шаблон Django, взгляните на пони , легкий шаблон Django, готовый к использованию с Heroku. Вот такой небольшой, но интересный материал.

Ждем ваших комментариев и Приглашаем вас на бесплатный вебинар , внутри которого мы Мы подробно изучим, как тестировать проекты Flask, писать и запускать тесты для проектов Flask, создавать тестовые данные с помощью Faker и Factory Boy. Теги: #python #разработка веб-сайтов #django #webdev

Вместе с данным постом часто просматривают: