Bonjour,
Je cherche a afficher le nom de personne en fonction de leur ID. J'utilise la table User de Django pour m'authentifier.
La boucle for fonctionne bien, dans le terminal j'ai bien les résultats des ID sous cette forme:
p.id
1
p.id
2
qui s'affiche mais dans le template, je n'en ai qu'un seul résultat, le premier, alors que j'aimerai en plusieurs
Savez-vous pourquoi ?
Merci
Models.py
-------------
views.py
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 class Mission(models.Model): nom = models.ManyToManyField(Identite, blank=True, null=True) dsx = models.CharField(max_length=7, blank=True, default='', null=True) pays = models.ForeignKey(Pays) ville = models.CharField(max_length=15, null=True) date_depart = models.DateField(blank=True, null=True) date_retour = models.DateField(blank=True, null=True) vol = models.TextField(blank=True, default='', null=True) etat = models.BooleanField(default=False) document = models.ManyToManyField(Typedoc, null=True) fichenavette = models.TextField(null=True) source = models.CharField(max_length=20, blank=True, default='', null=True) class Assurance(models.Model): nom = models.ForeignKey(User, null=True) type_assurance = models.CharField(max_length=20) num_contrat = models.CharField(max_length=10) nom_assurance = models.CharField(max_length=10) validite = models.DateField(blank=True, null=True) acquereur = models.CharField(max_length=20, blank=True, null=True) repondant = models.CharField(max_length=20, blank=True, null=True)
-----------
templates
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 #idm = id de la mission def detail_mission(request,idm): identite = Identite.objects.all() missionss = Mission.objects.filter(id=idm) missions = Mission.objects.filter(id=idm) print missions.query for mission in missions: for p in mission.nom.all(): print "p.id" print p.id assurance = Assurance.objects.all().filter(nom_id=p.id) return render(request, 'detail_mission.html', {'identites': identite, 'missions':missionss, 'assurances':assurance})
------------
Merci à vous
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 {% if assurances %} <table> <thead> <tr> <th>nom:</th> <th>Nom de l'assurance:</th> </tr> </thead> <tbody> <tr>{% for assurance in assurances %} <td>{{ assurance.nom }}</td> <td>{{ assurance.nom_assurance }}</td> </tr>{% endfor %} </tbody> </table>{% endif %}
Partager