fix select_related loop infini FK modeles
[auf_rh_dae.git] / project / recrutement / admin.py
index a7801a8..5d8ebdb 100644 (file)
@@ -29,6 +29,16 @@ class CandidatAdmin(admin.ModelAdmin):
         }),
     )
 
+    def queryset(self, request):
+        """
+        Spécifie un queryset limité, autrement Django exécute un select_related()
+        sans paramètre, ce qui a pour effet de charger tous les objets FK, sans limite
+        de profondeur. Dès qu'on arrive, dans les modèles de Region, il existe plusieurs
+        boucles, ce qui conduit à la génération d'une requête infinie.
+        """
+        qs = self.model._default_manager.get_query_set()
+        return qs.select_related('offre_emploi')
+
 class CandidatPieceAdmin(admin.ModelAdmin):
     pass