2018-05-26 16:01:04 +02:00
|
|
|
from django import forms
|
|
|
|
|
2018-05-26 17:59:13 +02:00
|
|
|
from .models import Recette
|
|
|
|
|
2018-05-26 16:01:04 +02:00
|
|
|
|
|
|
|
class SearchForm(forms.Form):
|
2018-05-26 16:55:07 +02:00
|
|
|
text = forms.CharField(widget=forms.TextInput(attrs={'autofocus': True}))
|
2018-05-26 17:59:13 +02:00
|
|
|
saison = forms.ChoiceField(choices=(('all', "Toutes"),) + Recette.SAISON_CHOICES)
|
|
|
|
|
|
|
|
def search(self):
|
|
|
|
if self.is_valid():
|
|
|
|
qs = Recette.objects.all()
|
|
|
|
if self.cleaned_data['text']:
|
|
|
|
qs = qs.filter(nom__icontains=self.cleaned_data['text'])
|
|
|
|
if self.cleaned_data['saison'] != 'all':
|
|
|
|
qs = qs.filter(saison__contains=[self.cleaned_data['saison']])
|
|
|
|
return qs
|
|
|
|
else:
|
|
|
|
return Recette.objects.none()
|