Ваше первое представление (view)
В предыдущей главе мы объяснили как настроить проект и запустить сервер разработки. В этой главе вы изучите основы создания страниц на Django.
Для начала давайте создадим страницу, которая будет выводить знаменитое сообщение: " Hello World! "
Внутри каталога mysite
создайте пустой файл с именем views.py
. Этот файл будет содержать наше первое представление, который будет состоять из кода функции и оператора импорта.
Основная идея в том, что представление является функцией языка Python, которая принимает HttpRequest
в качестве первого параметра и возвращает экземплярHttpResponse.
Для того, чтобы функция языка Python стала функцией представления Django, он должен соответствовать этим двум правилам. Есть исключения из этих правил, но мы рассмотрим их позже.
Ваша первая привязка URL
Если в этот момент вы бы запустили снова команду python manage.py runserver
, то вы бы увидели сообщение«Welcome to Django»без единого следа нашего представления. Так происходит потому, что наш проект mysite
ещё не знает о представленииhello
. Нам потребуется указать Django, что мы активируем данное представление для конкретного URL. Для привязки функции представления к конкретному URL в Django используются файлы привязки URL.
Файл привязки URL можно рассматривать как таблицу с содержанием вашего сайта. Этот файл определяет соответствие между URL и функциями представления, которые должны быть вызваны для этих URL. Именно так вы указываете Django: "Для данного URL, вызывай этот код, а для этого URL вызывай вот этот код".
Ниже показана привязка для нашего представления hello
:
- Мы импортировали представление
hello
из его модуля —mysite/views.py
, которое преобразовалось в mysite.views. - Затем, мы добавили строку
('^hello/$', hello)
вurlpatterns
. Такая строка известна как шаблон URL. Это обычный кортеж языка Python, в котором первый элемент является шаблоном регулярного выражения, а второй элемент — функция представления, которая должна использоваться при совпадении данного шаблона. После мы запускаем наш сервер и переходим по ссылке: http://127.0.0.1:8000/hello/\
Yahooo! вы создали вашу первую страницу с помощью Django!
Синтаксис шаблона URL
Django удаляет "/" вначале каждого URL, перед его проверкой относительно шаблонов. В данном примере шаблон включает в себя символы ^
и $
. Они являются символами регулярного выражения.
^ - означает шаблон должен совпадать с начала строки
$ - означает шаблон должен совпадать до конца строки
Ниже представлена таблица наиболее используемых шаблонов: