j'ai les modèles suivantsfaçon correcte d'accéder aux objets liés
class Person(models.Model):
name = models.CharField(max_length=100)
class Employee(Person):
job = model.Charfield(max_length=200)
class PhoneNumber(models.Model):
person = models.ForeignKey(Person)
Comment accéder aux PHONENUMBERS associés à un employé si je l'id employé?
Actuellement, je suis en utilisant
phones = PhoneNumbers.objects.filter(person__id=employee.id)
et il ne fonctionne que parce que je sais que le employee.id et person.id sont la même valeur, mais je suis sûr que c'est la mauvaise façon de le faire.
Merci
Andrew
Pas besoin de vérifier la longueur. Employee.objects.select_releated() get (id = VOTRE_ID) .phonenumber_set.all() –
Si vous faites un get sur un objet qui n'existe pas, il déclenchera une exception. Vous devriez TOUJOURS soit faire un filtre et vérifier la longueur ou envelopper l'obtenir dans un essai/sauf. Votre réponse est correcte, mais votre commentaire est un mauvais conseil. –
Je savais qu'il y avait une façon correcte de le faire, je ne pouvais pas le comprendre. Merci pour votre aide. –