discipline = forms.ModelChoiceField(queryset=Discipline.objects.all(), required=False, label="Discipline", empty_label="Tous")
domaine = forms.ModelChoiceField(queryset=Groupe.objects.all(), required=False, label="Domaine de recherche", empty_label="Tous")
statut = forms.ChoiceField(choices=(('','Tous'),)+STATUT_CHOICES+(('expert','Expert'),), required=False, label="Statut")
- pays = forms.ModelChoiceField(queryset=Pays.objects.all().order_by("nom"), required=False, label="Localisation", empty_label="Tous")
+ pays = forms.ModelChoiceField(queryset=Pays.objects.all(), required=False, label="Pays", empty_label="Tous")
+ region = forms.ModelChoiceField(queryset=Region.objects.all(), required=False, label="Région", empty_label="Toutes")
+ nord_sud = forms.ChoiceField(choices=(('', 'Tous'), ('Nord', 'Nord'), ('Sud', 'Sud')), required=False, label="Nord/Sud")
def get_query_set(self):
qs = Chercheur.objects.all()
nom = self.cleaned_data['nom']
if nom:
qs = qs.search_nom(nom)
- pays = self.cleaned_data["pays"]
- if pays:
- qs = qs.filter(Q(etablissement__pays = pays.pk) | Q(etablissement_autre_pays = pays.pk))
discipline = self.cleaned_data["discipline"]
if discipline:
qs = qs.filter(discipline=discipline)
qs = qs.exclude(expertise=None)
else:
qs = qs.filter(statut=statut)
+ pays = self.cleaned_data["pays"]
+ if pays:
+ qs = qs.filter(Q(etablissement__pays=pays) | Q(etablissement_autre_pays=pays))
+ region = self.cleaned_data['region']
+ if region:
+ qs = qs.filter(Q(etablissement__pays__region=region) | Q(etablissement_autre_pays__region=region))
+ nord_sud = self.cleaned_data['nord_sud']
+ if nord_sud:
+ qs = qs.filter(Q(etablissement__pays__nord_sud=nord_sud) | Q(etablissement_autre_pays__nord_sud=nord_sud))
return qs
class SendPasswordForm(forms.Form):