Quand on utilise les vues d'auto-complétion, on a la possibilité de
configurer des filtres avec get_queryset_filter
, mais pas d'autres
transformations sur le queryset. Notamment, cela signifie que pour les
vues qui utilisent des ForeignKey
, on ne peut pas spécifier de
select_related
pour éviter des requêtes inutiles et répétées lors du
rendering des vues.
Ce patch ajoute une méthode get_queryset
, en suivant la convention
habituelle de Django, permettant cette configuration, et l'utilise pour
appeler select_related
de façon appropriée dans les vues qui en
bénéficient.
À priori, cela devrait permettre de compenser la potentielle perte de
performance de !469 (merged), qui a supprimé les select_related
lors de la
sélection des participants.
Attention, je n'ai pas testé ce code car je n'ai pas réussi à installer un environnement de développement sur ma machine (c'est-à-dire que j'ai arrêté d'essayer au bout de plusieurs erreurs). Je fais une MR pour que le code soit visible. Si quelqu'un veut tester, iel est lea bienvenue; sinon, je le ferai le jour où j'ai un environnement de dév qui marche.