Browse Source

Pár fixů

- Initial nemá dostat lidské řetězce
- Zahozeno get_initial_for_field
middleware_test
Pavel "LEdoian" Turinsky 3 years ago
parent
commit
4f04efd519
  1. 12
      seminar/forms.py
  2. 9
      seminar/views/odevzdavatko.py

12
seminar/forms.py

@ -389,13 +389,17 @@ class OdevzdavatkoTabulkaFiltrForm(forms.Form):
initial = {
'resitele': cls.RESITELE_RELEVANTNI,
'problemy': cls.PROBLEMY_MOJE,
'reseni_od': terminy[-2],
'reseni_do': terminy[-1],
'reseni_od': terminy[-2][0],
'reseni_do': terminy[-1][0],
}
return initial
def __init__(self, *args, **kwargs):
super().__init__(initial=self.gen_initial(), *args, **kwargs)
if 'initial' not in kwargs:
super().__init__(initial=self.gen_initial(), *args, **kwargs)
else:
super().__init__(*args, **kwargs)
# choices jako parametr Select widgetu neumí brát callable, jen iterable, takže si pro jednoduchost můžu rovnou uložit výsledek sem...
# A "sem" znamená do libovolné metody, protože jinak se jedná o kód, který django spustí při inicializaci a protože potřebujeme databázi, tak by spadnul při vyrábění testdat...
self.terminy = self.gen_terminy()
@ -405,4 +409,6 @@ class OdevzdavatkoTabulkaFiltrForm(forms.Form):
problemy = forms.ChoiceField(choices=PROBLEMY_CHOICES)
# reseni_od = forms.DateField(input_formats=[DATE_FORMAT], widget=forms.Select(choices=self.terminy))
# reseni_do = forms.DateField(input_formats=[DATE_FORMAT], widget=forms.Select(choices=self.terminy))
reseni_od = forms.DateField(input_formats=[DATE_FORMAT])
reseni_do = forms.DateField(input_formats=[DATE_FORMAT])

9
seminar/views/odevzdavatko.py

@ -57,10 +57,11 @@ class TabulkaOdevzdanychReseniView(ListView):
reseni_od = fcd["reseni_od"]
reseni_do = fcd["reseni_do"]
else:
resitele = FiltrForm.get_initial_for_field(FiltrForm.resitele, "resitele")
problemy = FiltrForm.get_initial_for_field(FiltrForm.problemy, "problemy")
resitele_od = FiltrForm.get_initial_for_field(FiltrForm.resitele_od, "resitele_od")
resitele_do = FiltrForm.get_initial_for_field(FiltrForm.resitele_do, "resitele_do")
initial = FiltrForm.gen_initial()
resitele = initial['resitele']
problemy = initial['problemy']
reseni_od = initial['reseni_od']
reseni_do = initial['reseni_do']
# Filtrujeme!

Loading…
Cancel
Save