Предположим, у меня есть объект:
survey = Survey.objects.all().first()
, и я хочу создать связь между ним и группой объектов:
respondents = Respondent.objects.all()
for r in respondents:
r.eligible_for.add(survey)
, где eligible_for
- поле M2Mв модели Respondent
.
Есть ли способ сделать это за один проход или мне нужно перебрать набор запросов?
models.py
class Questionnaire(models.Model):
label = models.CharField(max_length=48)
organization = models.ForeignKey('Home.Organization', on_delete=models.PROTECT, null=True)
class Respondent(models.Model):
user = models.OneToOneField('Home.ListenUser', on_delete=models.CASCADE)
organization = models.ForeignKey('Home.Organization', on_delete=models.PROTECT)
eligible_for = models.ManyToManyField('Questionnaire', related_name='eligible_users', blank=True)