django-utils

personal collection of django utilities
git clone https://git.ce9e.org/django-utils.git

commit
9f3a341cded8e09b1e029dabb206e24cb6cb3941
parent
3311ec2e3d6b57d813e43cba0520b6fc3e7bc99c
Author
Tobias Bengfort <tobias.bengfort@posteo.de>
Date
2019-09-15 09:08
add get_form

Diffstat

A utils/get_form.py 26 ++++++++++++++++++++++++++

1 files changed, 26 insertions, 0 deletions


diff --git a/utils/get_form.py b/utils/get_form.py

@@ -0,0 +1,26 @@
   -1     1 from django.views.generic import TemplateView
   -1     2 from django.views.generic.edit import FormMixin
   -1     3 
   -1     4 
   -1     5 class GetFormMixin(FormMixin):
   -1     6     def get_form_kwargs(self):
   -1     7         kwargs = super().get_form_kwargs()
   -1     8         if self.request.GET:
   -1     9             kwargs['data'] = self.request.GET
   -1    10         return kwargs
   -1    11 
   -1    12 
   -1    13 class GetFormView(GetFormMixin, TemplateView):
   -1    14     def get(self, request, *args, **kwargs):
   -1    15         form = self.get_form()
   -1    16         if form.is_valid():
   -1    17             return self.form_valid(form)
   -1    18         else:
   -1    19             return self.form_invalid(form)
   -1    20 
   -1    21     def form_invalid(self, form):
   -1    22         context = self.get_context_data(form=form)
   -1    23         return self.render_to_response(context)
   -1    24 
   -1    25     def form_valid(self, form):
   -1    26         raise NotImplementedError