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

Форма и ее обработка в одном представлении в Django

Часто форму и ее обработку удобно держать в одном представлении. При GET показывают форму, при POST - читают данные.

Давайте сделаем один маршрут:

urlpatterns = [ path('form/', views.handle_form), ]

В шаблоне action можно оставить пустым - форма отправится на тот же адрес:

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

В представлении проверим метод запроса:

from django.http import HttpResponse from django.shortcuts import render def handle_form(request): if request.method == 'POST': title = request.POST['title'] slug = request.POST['slug'] return HttpResponse(title + ' ' + slug) return render(request, 'form.html')

Сделайте форму регистрации с полями login и password. Показ и обработка - в одном представлении.

При POST выведите введенный логин.

При GET покажите форму.

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