Добавить в корзинуПозвонить
Найти в Дзене

Создание Django приложения. Подключение к основному проекту. Создание wiew функции.

1. Создание приложения. В терминале вводим команду python manage.py startapp “название приложения без кавычек”. Создастся папка с название приложения. 2. Отмечаем, что папка с проектом является Sources Root. Нажимаем правой кнопкой мыши на папку проекта(не путать с папкой с приложением). В разделе Mark Directory as выбираем Sources Root. Созданные файлы в папке с приложением: - admin.py– позволяет описать, какие модели нужно отображать в джанго админки. - apps.py– содержит конфигурацию приложения. - models.py– создан для объявлении моделей в джанго. - tests.py– нужен для того, что бы писать тесты проетка. - views.py – здесь создаются вью функции, которые будут обрабатывать запросы. - migration(папка) – будут складывать файлы миграции. 3. После создания приложения, выполняем подключение к основному проекту. Для того что бы установить приложение, нужно указать в настройках ссылку на конфигурацию приложения. Переходим в файл apps.py и копируем референс для этого конфига. Правой кнопкой мы

1. Создание приложения.

В терминале вводим команду python manage.py startapp “название приложения без кавычек”. Создастся папка с название приложения.

2. Отмечаем, что папка с проектом является Sources Root.

Нажимаем правой кнопкой мыши на папку проекта(не путать с папкой с приложением). В разделе Mark Directory as выбираем Sources Root.

Созданные файлы в папке с приложением:

- admin.py– позволяет описать, какие модели нужно отображать в джанго админки.

- apps.py– содержит конфигурацию приложения.

- models.py– создан для объявлении моделей в джанго.

- tests.py– нужен для того, что бы писать тесты проетка.

- views.py – здесь создаются вью функции, которые будут обрабатывать запросы.

- migration(папка) – будут складывать файлы миграции.

3. После создания приложения, выполняем подключение к основному проекту.

Для того что бы установить приложение, нужно указать в настройках ссылку на конфигурацию приложения. Переходим в файл apps.py и копируем референс для этого конфига. Правой кнопкой мыши, по созданному объекту class…), Copy/Paste Special, Copy Reference (можно и в ручную прописать).

В файле settings.py, находим переменную(список) INSTALLED_APPS и выполняем вставку конфигурации нашего приложения. После этого наше приложение установлено и проект будет видеть все модели.

4. Правила маршрутизации лежат в файле urls.py.

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

Создаем в папке с приложением файл urls.py. Его нужно сделать по аналогии с файлом urls.py в папке с проектом. В переменной urlpatterns перечислены все ссылки, которые нужно регистрировать.

В файле urls.py в папке с приложение создаем переменную urlpatterns. Импортируем from django.urls import path. Для того что бы этот файл был отдельным пространством имен, нужно создать переменную app_name и укзать название приложения.

Остается подключить файл urls.py к основному проекту. В файле проекта urls.py дополнительно импортируем include. Подключаем ссылки в нашем приложении. В списке urlpatterns добавляем путь path(‘shop/’, include(‘название папки с приложением.urls.py’)).

5. Создаем wiew функцию, которая примет входящий запрос и вернет ответ.

Wiew функция – это обычная функция. Ее назвать можно как угодно. Открываем файл wiews.py. Создаем функцию, которая принимает объект request. И из функции нужно вернуть HTTP ответ. Для этого из django импортируем объект HttpResponse (from django.http import HttpResponse).

return HttpResponse(‘Текст, который будет возвращен клиенту’).

Проходим в файл urls.py в папке с приложением. Импортируем нашу wiew функцию. И в urlpatterns нужно обозначить, что путь к корню странице должна обрабатывать наша wiew функция. Прописываем path(“”, наша wiew функция, name=“имя этой странице”).

Как обрабатывается путь? При запросе в проект, сначала используется корневой urls.py. Здесь как начало ссылки указали как ‘shop/’, дальнейшая обработка запроса будет происходить при помощи функции includeв файле приложения urls.py. В wiew функцию будет приходить запрос, а имя name= “имяуказан для того, что-бы потом обращаться к этой функции через это имя, потому что сама функция может поменять свое имя, а имя при обращении к данному пути будет неизменно.

После подключения wiew функции к данному пути, в браузере можно сделать запрос на /shop/. Убедитесь что сервер запущен.

Объект request может предоставлять всю информацию о входящем запросе.