From f9983b5a68d2eef729a794ee00083f6876ea6aa6 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Olivier=20Larchev=C3=AAque?= Date: Fri, 27 May 2011 10:18:52 -0400 Subject: [PATCH] fix select_related loop infini FK modeles --- project/recrutement/admin.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/project/recrutement/admin.py b/project/recrutement/admin.py index b1252f8..40d9d0a 100644 --- a/project/recrutement/admin.py +++ b/project/recrutement/admin.py @@ -7,7 +7,17 @@ class OffreEmploiAdmin(admin.ModelAdmin): pass class CandidatAdmin(admin.ModelAdmin): - pass + list_display = ('nom', 'prenom', 'offre_emploi', ) + + 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 -- 1.7.10.4