Часть вторая. Написание страницы и отслеживание URL
Здесь мы напишем страницы на HTML и научимся отслеживать их в проекте
Цель: Создать первые страницы и отследить их URL
Задачи:
Создать приложение в проекте
Создать страницы в приложении проекта
Отладка сервера проекта
Небольшой экскурс в историю
Весь интернет работает по одному основному протоколу и ряду дополнительных. Основной протокол – HTTP (от англ. HyperText Transfer Protocol — протокол передачи гипертекста). HTTP – это прикладной протокол передачи данных в сети. На текущий момент используется для получения информации с веб-сайтов. Протокол HTTP основан на использовании технологии «клиент-сервер»: клиент, отправляющий запрос, является инициатором соединения; сервер, получающий запрос, выполняет его и отправляет клиенту результат.
HTTP был предложен в марте 1991 года Тимом Бернерсом-Ли, работавшим тогда в CERN, как механизм для доступа к документам в Интернете и облегчения навигации посредством использования гипертекста. Самая ранняя версия протокола HTTP/0.9 была впервые опубликована в январе 1992 года (хотя реализация датируется 1990 годом).
Шли годы и опасность в интернете росла. С возрастание угроз стало необходимо шифрование. Так появился HTTPS (от англ. HyperText Transfer Protocol Secure — безопасный протокол передачи гипертекста) — это расширение протокола HTTP, поддерживающее шифрование посредством криптографических протоколов SSL и TLS, где SSL и TLS дополнили основной HTTP.
Для работы с HTTP протоколом существует свой язык – HTML. HTML (от англ. HyperText Markup Language — «язык гипертекстовой разметки») — стандартизированный язык разметки документов во Всемирной паутине. Большинство веб-страниц содержат описание разметки на языке HTML (или XHTML). Язык HTML интерпретируется браузерами; полученный в результате интерпретации форматированный текст отображается на экране монитора компьютера или мобильного устройства.
Теперь вернёмся к нашему проекту. По возвращению, мы видим новый файл – db.sqlite3. Этот файл появился после запуска сервера. Он – наша база данных и понятно, пока, пустая.
Создание приложения
Переходим в терминал и пишем команду
Мы создали новую директорию под названием blog. blog – это приложение для нашего проекта сайта «MySite».
Пишем страницу
Открываем views.py.
Пишем строку импорта новой библиотеки
Напишем простую функцию
Не забываем про pep8 (руководство по написанию кода на Python). Ссылка на полное руководство:
Теперь нам нужно её вызвать. Приступим.
В приложении blog создадим файл – urls.py
. Для этого откроем папку с проектом. В моём случае это C:\Users\Valery\PycharmProjects\MySite\blog. Затем, создаём файл.
Обратимся к автоматически созданному файлу urls.py в папке C:\Users\Valery\PycharmProjects\MySite. Откроем его.
Построчно разберём код
from django.contrib import admin
– импорт библиотеки для создание панели администратора сайта.
from django.urls import path
– импорт библиотеки для создание списка адресов страниц.
Организация списка url-файлов
Скопируем кусок в C:\Users\Valery\PycharmProjects\MySite\blog\urls.py. Копируем всё, кроме библиотеки на панель администратора. То есть:
Заменим path('admin/', admin.site.urls),
на path('', views.home),
. Результат:
Что мы сделали? Мы вызываем главную страницу нашего проекта, то есть (http://127.0.0.1:8000/blog/), а вызов идёт в файл views.py в приложении blog и обращается к функции home, которую мы создали.
Есть только 1 маленькая проблема – фатальная ошибка компиляции. Файл urls.py не «видит» файла views.py. Исправляем:
from .
означает, что импорт идёт из корневой для приложения директории, то есть C:\Users\Valery\PycharmProjects\MySite\blog\.
Хлебные крошки
Добавим последний штрих – хлебную крошку. Верстальщики называют хлебными крошками – имена ключевых объектов/директорий/файлов и т.п. Хлебные крошки – это навигационная цепочка на сайте. Свой название оно получило по аналогии с немецкой сказкой «Гензель и Гретель», в которой дети, когда их повторно завели в лес, не смогли найти дорогу обратно, так как вместо камешков оставили хлебные крошки, которые впоследствии склевали лесные птицы.
Теперь к делу. Итоговая вёрстка файла urls.py выглядит так:
Теперь мы не заблудимся и вернёмся в главную директорию.
Если бы мы сейчас искали приложение blog, мы бы его не нашли. Дело в том, что в urls.py в директории C:\Users\Valery\PycharmProjects\MySite\ указана ссылка только на приложение admin. Исправим это.
Мы подключаем ссылку blog и все её url-файлы командой include. Чтобы она работала, мы импортируем её во второй строке.
Запускаем сервер и проверяем.
Так и должно быть, так как на главной странице у нас ничего нет. Перейдём в blog.
Проверим admin
Победа.
Закрепление
Напишем ещё одну страницу для закрепления. Работаем в директории blog. Переходим в файл viewes.py и в нём пишем ещё одну функцию.
Переходим в urls.py. Пишем новую ссылку:
Теперь у нас будет новый путь: http://127.0.0.1:8000/blog/contacts
Переходим на папку вверх в MySite. Заходим в файл urls.py и ничего там не меняем
Почему? Командой include('blog.urls') мы проверяем все ссылки второго уровня.
Запуск сервера. Проверка.
Всё работает.
Last updated