1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| def filtre(choix_utilisateur, groupe, note):
"""
Construit la requete Sql et filtre les ecoles en fonction du choix de l'utilisateur
"""
cu = choix_utilisateur
predicats = (
(note, "Points <=?"),
(groupe, "Groupe =?"),
(cu["Specialite"], "Idspe =?"),
(cu["Alternance"], "Alternance =?"),
(cu["Concours"], "Admission =?"),
(cu["Region"], "Region =?"),
)
conditions = tuple(pred for pred in predicats if pred[0] is not None)
req = (
"SELECT Nom,Admission,Commune FROM EcoleSpe JOIN "
"EcoleS ON EcoleSpe.IdEcole=EcoleS.id"
)
if conditions :
req += " WHERE "
req += " AND ".join(cond[1] for cond in conditions)
rvars = tuple(cond[0] for cond in conditions)
return curseur.execute(req, rvars) |
Partager