Files
TijdVoorDeTest/tvdt/quiz/views/selectseasonview.py

30 lines
849 B
Python

from crispy_forms.helper import FormHelper
from django.http import Http404
from django.shortcuts import redirect
from django.urls import reverse
from django.views.generic.edit import FormView
from django import forms
from ..models import Season
class SelectSeasonForm(forms.Form):
code = forms.CharField(max_length=5)
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.helper = FormHelper()
class SelectSeasonView(FormView):
form_class = SelectSeasonForm
template_name = "quiz/select_season.html"
def form_valid(self, form):
try:
season = Season.objects.get(season_code=form.cleaned_data["code"].upper())
except Season.DoesNotExist:
raise Http404("Season does not exist")
return redirect(reverse("quiz", kwargs={"season": season}))