У меня есть модель Wagtail Page, которую я использую для визуализации формы. Я переопределил методы get_context
и serve
, чтобы передать их в форме контекста страницы, а затем проверить их при получении запроса POST
:
class RegistrationPage(Page):
...
def get_context(self, request, *args, **kwargs):
# Avoid circular dependency
from registration.forms import RegistrationForm
context = super().get_context(request)
context["form"] = RegistrationForm
return context
def serve(self, request, *args, **kwargs):
# Avoid circular dependency
from registration.forms import RegistrationForm
if request.method == "POST":
registration_form = RegistrationForm(request.POST)
if registration_form.is_valid():
registration = registration_form.save()
return redirect("/")
else:
# How do I pass the form with validation errors to the page?
# Note: I already have template logic to render the form errors
# I just need to pass the invalidated form to the template
else:
return super().serve(request)
Вопрос:
Когда проверка формы завершается неудачно, как передать форму обратно в шаблон, чтобы пользователь мог видеть ошибки проверки?