Filtrer avec un foreignkey

L'auteur de ce sujet a trouvé une solution à son problème.
Auteur du sujet

Bonjour,

J'ai un problème avec le choices de Django.

J'ai deux models :

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
class Model_1(models.Model):
    CHOIX =(
        ('choix_1', 'nom_choix_1'),
        ('choix_2', 'nom_choix_2'),
        ('choix_3', 'nom_choix_3'),
    )

    nom = models.CharField(max_length=200, choices=CHOIX)
    slug = models.SlugField(max_length=100)

    def __str__(self):
        return self.nom
1
2
3
4
5
6
7
class Model_2(models.Model):
    categorie = models.ForeignKey('Model_1', related_name='categorie_model_2')
    nom = models.CharField(max_length=40, verbose_name="Nom du model 2")
    slug = models.SlugField(max_length=400)

    def __str__(self):
        return self.nom

Quand on affiche les noms des objets du model_1 on nous renvoie le deuxième élements des sous tuples (nom_choix_X), mais quand on veut afficher la categorie des objets du Model_2 on nous renvoie le premier element du sous tuples (choix_X), je ne comprend pas ce comportement.

Édité par anonyme

+0 -0
Staff

Je dois avouer ne pas comprendre ta question.

Qu'as-tu essayer? Quel est le résultat obtenu par rapport au résultat attendu? Et si possible ave cdes vraies classes qu'on puisse comprendre.

Car là tu parles de filter dans ton titre mais de comportement de "renvoie" dans ton message. Alors je ne sais pas ce que tu fais du coup.

+0 -0
Auteur du sujet

Oui je suis désolé, je me suis emmêlé dans mon message, je ne voulais pas mettre ça au début, puis j'ai changé d'avis sans changer le titre.

Dans tous les cas j'ai contourner le problème en n'utilisant pas des tuples qui étaient superflus. Merci.

+0 -0
Vous devez être connecté pour pouvoir poster un message.
Connexion

Pas encore inscrit ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte