AttributeError: Объект Class1 не имеет атрибута 'class2_set' с полем ManyToMany Django
Модель :
class Groupe(models.Model):
name = models.CharField(max_length=255)
autoAddingMail = models.CharField(max_length=255,null=True,blank=True)
association = models.ForeignKey(
User,
limit_choices_to={'role': 'ASSOCIATION'},
null=False,
on_delete=models.CASCADE,
related_name='association'
)
students = models.ManyToManyField(
User,
limit_choices_to={'role': 'STUDENT'},
related_name='students'
)
events = models.ManyToManyField(
Event
)
class Meta:
unique_together = ("name","association")
REQUIRED_FIELDS = ['name','association']
def __str__(self):
""" Return string representation of our user """
return self.name
Unit test :
groupe = event.groupe_set.get(name="name",association=association) <= работает нормально
groupe = student.groupe_set.get(name="name",association=association) <= не работает
Ошибка :
AttributeError: 'User' object has no attribute 'groupe_set'
Я не понимаю, почему у student нет атрибута groupe_set, а у event он есть
Я прочитал документацию о полях ManyToMany, но не нашел ответов.
Вместо
группа = student.groupe_set.get(name="name",association=association)
Мне пришлось использовать :
groupe = student.students.get(name="name",association=association)
Из-за связанного_имени. Спасибо @iklinac за его комментарий.