РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
⊗pydjPmFrPt 155 of 187 menu

Отправка формы через POST и CSRF в Django

Давайте отправим форму методом POST. В теге form укажем method="post":

<form action="/result/" method="post"> <input name="title"> <input name="slug"> <input type="submit"> </form>

Для POST Django требует защиту от CSRF атаки. В форму нужно добавить скрытое поле с токеном. В шаблоне для этого есть тег {% csrf_token %}:

<form action="/result/" method="post"> {% csrf_token %} <input name="title"> <input name="slug"> <input type="submit"> </form>

Данные POST-формы читают из request.POST:

from django.http import HttpResponse def show_result(request): title = request.POST['title'] slug = request.POST['slug'] return HttpResponse(title + ' ' + slug)

Переделайте форму поиска на метод POST и добавьте {% csrf_token %}.

Прочитайте данные формы из request.POST и выведите их.

Расскажите, зачем нужен CSRF-токен в POST-форме.

Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить