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



Pdf көрінісі
бет311/334
Дата18.10.2023
өлшемі6,19 Mb.
#186390
1   ...   307   308   309   310   311   312   313   314   ...   334
Байланысты:
Изучаем Python

new_topic.html
{% extends "learning_logs/base.html" %}
{% block content %}


Редактирование данных
427
Add a new topic:



{% csrf_token %}

{{ form.as_p }}



{% endblock content %}
Этот шаблон расширяет 
base .html
, поэтому он имеет такую же базовую структуру, 
как и остальные страницы Learning Log. В точке 

определяется форма HTML. 
Аргумент 
action
сообщает серверу, куда передавать данные, отправленные фор-
мой; в данном случае данные возвращаются функции представления 
new_topic()

Аргумент 
method
приказывает браузеру отправить данные в запросе типа POST.
Django использует шаблонный тег 
{%
csrf_token
%}

для предотвращения по-
пыток получения несанкционированного доступа к серверу (атаки такого рода 
называются 
межсайтовой подделкой запросов
). В точке 

отображается форма; 
это наглядный пример того, как легко в Django выполняются такие стандартные 
операции, как отображение формы. Чтобы автоматически создать все поля, необ-
ходимые для отображения формы, достаточно включить шаблонную переменную 
{{
form.as_p
}}
. Модификатор 
as_p
приказывает Django отобразить все элементы 
формы в формате абзацев — это простой способ аккуратного отображения формы.
Django не создает кнопку отправки данных для форм, поэтому мы определяем ее 
в точке 

.
Создание ссылки на страницу new_topic
Далее ссылка на страницу 
new_topic
создается на странице 
topics
:
topics.html
{% extends "learning_logs/base.html" %}
{% block content %}
Topics

    ...

Add a new topic:
{% endblock content %}
Разместите ссылку после списка существующих тем. Полученная форма изобра-
жена на рис. 19.1. Воспользуйтесь ею и добавьте несколько своих тем.




Достарыңызбен бөлісу:
1   ...   307   308   309   310   311   312   313   314   ...   334




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

    Басты бет