|
1 | | -from django.shortcuts import render |
2 | | -from django.urls import reverse |
| 1 | +from django.urls import reverse_lazy |
3 | 2 |
|
4 | 3 | from .question_base_view import QuestionBaseView |
5 | | - |
6 | | -from ..models.education_response import EducationResponse |
7 | 4 | from ..forms.education_form import EducationForm |
| 5 | +from ..models.education_response import EducationResponse |
8 | 6 |
|
9 | 7 |
|
10 | 8 | class EducationView(QuestionBaseView): |
11 | | - def get(self, request): |
12 | | - response, _ = EducationResponse.objects.get_or_build( |
13 | | - response_set=request.response_set |
14 | | - ) |
15 | | - return render_template( |
16 | | - request, |
17 | | - EducationForm(instance=response) |
18 | | - ) |
19 | | - |
20 | | - def post(self, request): |
21 | | - response, _ = EducationResponse.objects.get_or_build( |
22 | | - response_set=request.response_set |
23 | | - ) |
24 | | - form = EducationForm( |
25 | | - instance=response, |
26 | | - data=request.POST |
27 | | - ) |
28 | | - |
29 | | - if form.is_valid(): |
30 | | - response.value = form.cleaned_data["value"] |
31 | | - response.save() |
32 | | - return self.redirect_to_response_or_next_question( |
33 | | - request, |
34 | | - "questions:respiratory_conditions" |
35 | | - ) |
36 | | - else: |
37 | | - return render_template( |
38 | | - request, |
39 | | - form, |
40 | | - status=422 |
41 | | - ) |
42 | | - |
43 | | - |
44 | | -def render_template(request, form, status=200): |
45 | | - return render( |
46 | | - request, |
47 | | - "education.jinja", |
48 | | - { |
49 | | - "form": form, |
50 | | - "back_link_url": reverse("questions:ethnicity") |
51 | | - }, |
52 | | - status=status |
53 | | - ) |
| 9 | + template_name = "education.jinja" |
| 10 | + form_class = EducationForm |
| 11 | + model = EducationResponse |
| 12 | + success_url = reverse_lazy("questions:respiratory_conditions") |
| 13 | + back_link_url = reverse_lazy("questions:ethnicity") |
0 commit comments