М97 Изучаем Python: программирование игр, визуализация данных, веб-приложения



Pdf көрінісі
бет297/334
Дата18.10.2023
өлшемі6,19 Mb.
#186390
1   ...   293   294   295   296   297   298   299   300   ...   334
Байланысты:
Изучаем Python

18.3. Django API: 
при написании кода для работы с данными проекта вы создаете за-
прос. Просмотрите документацию по созданию запросов к данным по адресу 
https://docs .
djangoproject .com/en/2 .2/topics/db/queries/
. Многое из того, что вы увидите, покажется вам 
новым, но эта информация пригодится, когда вы начнете работать над собственными про-
ектами.
18.4. Пиццерия:
создайте новый проект с именем 
pizzeria
, содержащий приложение 
pizzas
. Определите модель 
Pizza
с полем 
name
, в котором хранятся названия видов пиццы 
(например, «Гавайская» или «Четыре сыра»). Определите модель 
Topping
с полями 
pizza
и 
name
. Поле 
pizza
должно содержать внешний ключ к модели 
Pizza
, а поле name должно 
позволять хранить такие значения, как «ананас» или «грибы».
Зарегистрируйте обе модели на административном сайте. Используйте сайт для ввода на-
званий пиццы и топпингов. Изучите введенные данные в интерактивной оболочке.
Создание страниц: домашняя страница Learning Log
Обычно процесс создания веб-страниц в Django состоит из трех стадий: опреде-
ления URL, написания представлений и написания шаблонов. Сначала следует 
определить 
схемы
(patterns) URL. Схема URL описывает структуру URL-адреса 
и сообщает Django, на какие компоненты следует обращать внимание при сопо-
ставлении запроса браузера с URL-адресом на сайте, чтобы выбрать возвращаемую 
страницу.
Затем каждый URL-адрес связывается с конкретным 
представлением
— функция 
представление читает и обрабатывает данные, необходимые странице. Функция 
представления часто вызывает 
шаблон
, который строит страницу, подходящую для 
передачи браузеру. Чтобы вы лучше поняли, как работает этот механизм, создадим 
домашнюю страницу для приложения Learning Log. Мы определим URL-адрес 
домашней страницы, напишем для него функцию представления и создадим про-
стой шаблон.


Начало работы над приложением
409
Так как мы сейчас всего лишь убеждаемся в том, что Learning Log работает как по-
ложено, страница пока останется простой. Когда приложение будет завершено, вы 
можете заниматься его оформлением сколько душе угодно; приложение, которое 
хорошо выглядит, но не работает, бессмысленно. Пока на домашней странице будет 
отображаться только заголовок и краткое описание.
Сопоставление URL
Пользователь запрашивает страницы, вводя URL-адреса в браузере и щелкая на 
ссылках, поэтому мы должны решить, какие URL-адреса понадобятся в нашем 
проекте. Начнем с URL домашней страницы: это базовый адрес, используемый для 
обращения к проекту. На данный момент базовый URL-адрес 
http://localhost:8000/
возвращает сайт, сгенерированный Django по умолчанию; он сообщает о том, что 
проект был создан успешно. Мы изменим домашнюю страницу, связав базовый 
URL-адрес с домашней страницей Learning Log.
В каталоге проекта 
learning_log
откройте файл 
urls .py
. Вы увидите в нем следу-
ющий код:
urls.py

from django.contrib import admin
from django.urls import path

urlpatterns = [

path('admin/', admin.site.urls),
]
Первые две строки импортируют функции и модули, управляющие URL-адресами 
проекта и административным сайтом 

. В теле файла определяется переменная 
urlpatterns

. В файле 
urls .py
, представляющем проект в целом, переменная 
urlpatterns
включает наборы URL-адресов из приложений в проект. Код 

включает модуль 
admin.site.urls
, определяющий все URL-адреса, которые могут 
запрашиваться с административного сайта.
Добавим в этот файл URL-адреса 
learning_logs
:
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),

path('', include('learning_logs.urls')),
]
В точке 

добавляется строка включения модуля 
learning_logs.urls
.
Файл 
urls .py
по умолчанию находится в каталоге 
learning_log
; теперь нужно создать 
второй файл 
urls .py
в папке 
learning_logs
. Создайте новый файл Python, сохраните 
его под именем 
urls .py
в 
learning_logs
и включите в него следующий код:




Достарыңызбен бөлісу:
1   ...   293   294   295   296   297   298   299   300   ...   334




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет