Pour déboguer ce genre de problèmes procédez comme suit.
Exécutez le traitement de la fonction d'affichage séparément de tout modèle ou de toute autre partie de Django.
De manière interactive ou avec un script TRÈS simple, exécutez votre requête. Par exemple, utilisez un script simple comme celui-ci pour explorer votre modèle et vous assurer que votre modèle fonctionne vraiment.
from app.models import Contact, Institution, Whatever
results= Researchproject.objects.filter(restitlestrip__icontains='something').distinct()
for project in results:
print project.contact
print contact.institutionname
Notez plusieurs choses à propos de votre script simple et de votre modèle.
Cas important. Projet! = Projet.
La navigation compte. Dans le script ci-dessus, contact
est indéfini. project.contact
, cependant, est défini. Peut-être que c'est ce que vous vouliez dire.
Votre modèle semble incomplet. La table Contactintermed
ne semble pas être utilisée dans votre requête ou vue. Il peut avoir FK à d'autres tables, mais vous ne semblez pas avoir une navigation raisonnable de Projet à Contact à Contactinterma à Institution.
Obtenez votre modèle pour être correct dans un script autonome. Ajouter le traitement de modèle plus tard.
De même, veuillez poster tout le code ici sur StackOverflow. Chasing votre code sur Internet est une énorme douleur. Il est beaucoup plus facile d'ignorer simplement votre question que de chasser votre code.
Vous devez inclure votre modèle ainsi que votre vue et votre modèle. –
Et, je pense que vous devez inclure votre appel render_to_response dans la vue - il n'est pas évident quels objets sont utilisés pour créer le contexte du modèle. –
Le modèle est ici: http://dpaste.com/122224/ –