Question

J'ai passé les dernières heures à regarder des documents Django et des questions similaires ici, mais je ne sais toujours pas comment résoudre le problème ...

Dans Essense, je souhaite accéder à la liste des adresses e-mail pertinentes pour un certain groupe, afin que je puisse envoyer un e-mail à ces clients qui font partie de ce groupe (nommé Group_One, Group_Two, etc.)

class Group(models.Model):
  name = models.CharField(primary_key=True)
  mailing_list = models.ManyToManyField("Customer", null=True)  

class Customer(models.Model):
  name = models.CharField()
  email = models.EmailField(primary_key=True)

J'ai essayé

group_mail_list = Group.objects.filter(name=group_two)

Et cela renvoie un objet de requête pour group_two, mais lorsque j'essaie de faire un filtre __contains, j'obtiens une erreur:

TypeError: Related Field has invalid lookup: contains

Quelqu'un m'aide? Vous ne savez pas si c'est parce que c'est peut-être une relation plusieurs à plusieurs?

Merci d'avance :)

Était-ce utile?

La solution

Ce que tu veux vraiment, c'est CustomerS, alors. Il semble contre-intuitif à la surface, car vous voulez des e-mails pour un Group, mais ce champ est sur Customer ne pas Group:

Customer.objects.filter(group__name='group_two').values_list('email')
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top