Теперь, когда мы установили Django, давайте начнем его использовать. В Django каждое веб-приложение, которое вы хотите создать, называется проектом; он представляет собой совокупность приложений. Приложение представляет собой набор файлов с кодом, основанных на паттерне MVT. В качестве примера, скажем, мы хотим создать веб-сайт, веб-сайт — это наш проект, а форум, новости, механизм контактов — приложения. Такая структура облегчает перемещение приложений между проектами, поскольку каждое приложение является независимым.
Создание проекта
Если вы работаете в Windows или Linux, воспользуйтесь терминалом или командной строкой и перейдите в место, где вы хотите создать свой проект, а затем используйте команду ниже:
$ django-admin startproject myproject
Она создаст папку myproject со следующей структурой:
myproject/
manage.py
myproject/
__init__.py
settings.py
urls.py
wsgi.py
Структура проекта
Папка myproject — это просто контейнер вашего проекта, она содержит два элемента:
- manage.py — этот файл является своего рода локальным django-admin вашего проекта для взаимодействия с ним через командную строку (например, запуска сервера для разработки, синхронизации базы данных и т.д.). Чтобы получить полный список команд, доступных через manage.py, воспользуйтесь командой:
$ python manage.py help
- Подпапка “myproject” — данная папка является актуальным пакетом python вашего проекта. Она содержит четыре файла:
- __init__.py — специальный файл для python, чтобы он рассматривал эту папку как пакет.
- settings.py — как видно из названия, файл с настройками вашего проекта.
- urls.py — файл со ссылками вашего проекта.
- wsgi.py — файл для развертывания проекта через WSGI.
Настройка проекта
Настройки вашего проекта хранятся в подпапке myproject, в файле settings.py. Ниже приведены некоторые важные параметры, которые вам может потребоваться установить.
DEBUG = True
Эта опция позволяет вам установить, находится ли ваш проект в режиме отладки или нет. Режим отладки позволяет получать больше информации об ошибках вашего проекта. Никогда не устанавливайте True для “живого” проекта. Однако, для данной опции должно быть установлено True, если вы хотите, чтобы облегченный сервер Django обрабатывал статические файлы. Делайте это только в режиме разработки.
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': 'database.sql',
'USER': '',
'PASSWORD': '',
'HOST': '',
'PORT': '',
}
}
База данных настраивается в словаре DATABASES. Пример выше для движка SQLite. Как говорилось ранее, Django также поддерживает:
- MySQL (django.db.backends.mysql)
- PostgreSQL (django.db.backends.postgresql_psycopg2)
- Oracle (django.db.backends.oracle) и NoSQL DB
- MongoDB (django_mongodb_engine)
Перед настройкой любого нового движка убедитесь, что у вас установлен правильный драйвер БД.
Вы также можете настроить другие параметры, такие как: TIME_ZONE, LANGUAGE_CODE, TEMPLATE и т.д.
Теперь, когда ваш проект создан и настроен, убедитесь, что он работает:
$ python manage.py runserver
При запуске приведенной выше команды вы должны получить что-то вроде следующего вывода:
Validating models...
0 errors found
September 03, 2015 - 11:41:50
Django version 1.6.11, using settings 'myproject.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
Источник: Django — Creating a Project