Выражения в строках и , обращающиеся к базе данных за конкретной информацией, называ-
ются «запросами» . Когда вы пишете подобные запросы для своих проектов, сначала опробуйте их
в оболочке Django . Вы сможете проверить результат намного быстрее, чем если напишете пред-
406 Глава 18 • Знакомство с Django
С каждым элементом списка связываются два значения: временна
́я метка и пол-
ный текст каждой записи. Для временнуй метки выводится значение атрибута
date_added
. В шаблонах Django вертикальная черта (
|
) представляет фильтр —
функцию, изменяющую значение шаблонной переменной. Фильтр
date:'M
d,
Y
H:i'
выводит временны
́е метки в формате January 1, 2015 23:00. Следующая
строка выводит полное значение
text
(вместо первых 50 символов каждой запи-
си). Фильтр
linebreaks
следит за тем, чтобы длинный текст содержал разрывы
строк в формате, поддерживаемом браузером (вместо блока непрерывного текста).
В точке
шаблонный тег
{%
empty
%}
используется для вывода сообщения об от-
сутствии записей.
Ссылки на странице
Прежде чем просматривать страницу отдельной темы в браузере, необходимо из-
менить шаблон списка тем, чтобы каждая тема вела на соответствующую страницу.
Внесите следующие изменения в
topics .html
:
topics.html
...
{% for topic in topics %}
{{ topic }}
{% empty %}
...
Шаблонный тег URL используется для генерирования ссылки на основании схемы
URL из
learning_logs
с именем
'topic'
. Этой схеме URL необходим аргумент
topic_id
, поэтому в шаблонный тег URL добавляется атрибут
topic.id
. Теперь
каждая тема в списке представляет собой ссылку на страницу темы, например
http://localhost:8000/topics/1/.
Если теперь обновить страницу тем и щелкнуть на теме, открывается страница,
изображенная на рис. 18.5.
Достарыңызбен бөлісу: