Django — это высокоуровневый Python веб-фреймворк для быстрой и эффективной веб-разработки, который включает множество встроенных компонентов, таких как система аутентификации, административный интерфейс и инструменты для работы с базами данных.
Основные области применения:
- системы управления контентом (CMS)
- электронная коммерция
- приложения социальных сетей
- корпоративные приложения
- микросервисы и API
При создании/редактировании сайта укажите:
- Обработчик — выберите Python
- Режим приложения — выберите применимый режим для текущего пользователя
- Версия Python — выберите самую последнюю версию
Почему самая последняя версия Python?
Совместимость и производительность:
- включает последние улучшения языка и стандартной библиотеки
- быстрее предыдущих версий благодаря улучшениям в интерпретаторе
Долгосрочная поддержка:
- новые версии Python получают обновления в течение более длительных периодов времени
Ваш выбор версии Python повлияет на:
- новые синтаксические конструкции и улучшенные функции доступны только в самых последних версиях
Рекомендации
Используйте самую последнюю версию Python, если:
- вы начинаете новый проект
- вам нужны новые функции и улучшенная производительность
- все зависимости совместимы с этой версией
Оставайтесь на текущей версии Python, если:
- вы используете устаревшие библиотеки, не поддерживаемые самой последней версией
- проект стабилен на более старой версии Python и нет необходимости в обновлении
Пример: Если библиотека django-someplugin поддерживает только Python 3.10, лучше подождать, пока вы не обновитесь до версии, совместимой с Python 3.11.

Перейдите на вкладку Расширенные настройки.
Перейдите в раздел Обработчик. Заполните поля:
- Режим приложения — Python web server
- Путь к серверу — для запуска сервера необходимо указать путь к файлу
manage.pyпроекта. Путь к файлу имеет следующий формат, где project_name — это имя проекта Django - Аргументы сервера — для запуска сервера используйте команду runserver <номер порта>. Этот параметр будет распознан после создания сайта. Если значение runserver <номер порта> не было установлено в настройках сайта, при запуске проекта произойдет ошибка
Вы можете использовать команду в одном из следующих форматов.
Пример использования:
- runserver <port>
- runserver 127.0.0.1:<port>
Запуск сервера на порту 8000:
python project_name/manage.py runserver 8000
Запуск сервера на конкретном IP и порту:
python project_name/manage.py runserver 127.0.0.1:8000
- Метод подключения — port
- Версия Python — выберите самую последнюю версию
Также можно выбрать ту же версию, которая была ранее выбрана в настройках.
После заполнения всех полей нажмите Добавить.
Далее отредактируйте сайт:
- откройте вкладку Обработчик (Python)
- укажите порт в поле Аргументы сервера
В этом примере поле Аргументы сервера должно быть установлено в runserver 20000.
- Нажмите Сохранить.
Удалите автоматически созданный каталог:
- перейдите в раздел Сайты
- выберите сайт
- нажмите кнопку Файлы сайта
- выберите каталог project_name
- нажмите кнопку Редактировать
- нажмите кнопку Удалить
Далее выполните следующие шаги:
- перейдите в раздел Сайты
- выберите сайт
- нажмите кнопку Файлы конфигурации на панели инструментов
Введите django и сохраните изменения.
Далее:
- перейдите в раздел Сайты
- выберите сайт
- нажмите на контекстное меню
- выберите Shell-клиент
- введите следующие команды:
source .venv/bin/activate
pip install --upgrade pip
pip install wheel
pip install mysqlclient
Важно: Если при установке mysqlclient возникают проблемы, установите конкретную версию, например pip install mysqlclient==2.1.0.
django-admin startproject project_name
Примечание: В команде django-admin startproject project_name, project_name — это имя вашего проекта Django.
Далее:
- перейдите в раздел Сайты
- выберите сайт
- нажмите кнопку Файлы сайта
Откроется Файловый менеджер.
- перед выполнением операции убедитесь, что вы находитесь в каталоге, содержащем текущий проект
- после выполнения вышеуказанных шагов снова появится каталог project_name
- откройте каталог project_name
Далее выполните следующие шаги:
- выберите файл settings.py и отредактируйте его
- добавьте доменное имя и псевдонимы в раздел ALLOWED_HOSTS = []
- домены должны быть в кавычках. ALLOWED_HOSTS = ['имя сайта как в панели' , 'псевдоним']

В разделе DATABASES укажите информацию, необходимую для подключения к MySQL.

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'database_name',
'USER': 'database_username',
'PASSWORD': 'database_password',
'HOST': '<ip_address or localhost>',
}
}
Примечание: Если база данных не существует, создайте ее.
Выполните следующие шаги:
- прокрутите вниз до раздела STATIC_URL
- добавьте новый раздел STATIC_ROOT='static/'
- нажмите кнопку Сохранить и закрыть

Создайте каталог для статических файлов.
- перейдите в раздел Сайты
- откройте контекстное меню
- выберите Shell-клиент
- создайте каталог со статическими файлами
- выполните команды ниже:
source .venv/bin/activate
python project_name/manage.py collectstatic (где project_name — это имя вашего проекта Django)

Выполните миграцию проекта MySQL:
- выполните команду:
python project_name/manage.py migrate (где project_name — это имя вашего проекта Django)
- Нажмите Сохранить и закрыть.

Создайте файл конфигурации в корневом каталоге.
- перейдите в раздел Сайты
- выберите сайт
- выберите Файлы сайта
- нажмите кнопку Создать
Заполните поля следующим образом:
- Тип — файл
- Имя — введите passenger_wsgi.py
- нажмите кнопку Добавить
Выполните следующие шаги:
- перейдите в раздел Сайты
- выберите сайт
- выберите Файлы сайта
- выберите файл passenger_wsgi.py
- нажмите кнопку Редактировать
- нажмите кнопку Открыть

- в файле passenger_wsgi.py выполните команды ниже
- после выполнения всех команд нажмите Сохранить и закрыть
# -*- coding: utf-8 -*-
import os, sys
sys.path.insert(0, '/var/www/<имя пользователя панели>/data/www/<имя сайта>/project_name')
sys.path.insert(1, '/var/www/<имя пользователя панели>/data/www/<имя сайта>/.venv/lib/python<номер версии>/site-packages')
os.environ['DJANGO_SETTINGS_MODULE'] = 'project_name.settings'
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()

1. В строке sys.path.insert(0, '/var/www/<имя пользователя панели>/data/www/<имя сайта>/project_name') укажите путь к вашему проекту.
2. В строке sys.path.insert(1, '/var/www/<имя пользователя панели>/data/www/<имя сайта>/.venv/lib/python<номер версии>/site-packages') укажите версию Python, которую вы выбрали при создании сайта.
3. В строке os.environ['DJANGO_SETTINGS_MODULE'] = 'project_name.settings' измените project_name на имя вашего проекта.
Перезапустите Python.
- перейдите в Сайты
- выберите сайт
- нажмите на контекстное меню
- нажмите кнопку Перезапустить (Python)

Вы увидите стартовую страницу Django в вашем браузере.
