Объект 'ManyToManyDescriptor' не имеет атрибута 'add' в Django с PostgreSQL

Я пытаюсь хранить некоторые данные в моей базе данных, где 2 различные модели ссылаются друг на друга с полями 'Many-to-Many'.

мой models.py:

class CorrectAns(models.Model):
    ansId = models.IntegerField(primary_key=True)
    responseText1 = models.TextField(null=True, blank=True)
    isDeleted = models.BooleanField(default=False)
    questionRef = models.ManyToManyField('Questions')

class Questions(models.Model):
    questionId = models.IntegerField(primary_key=True)
    groupId = models.IntegerField(default=0)
    questionTitle = models.TextField()
    correctAnsRef = models.ManyToManyField(CorrectAns, related_name="questionReletedResponses")

мой views.py:

for i in QuestionsList:
        questionObj = Questions(
            questionId = i['Id'],
            groupId = i['GroupId'],
            questionTitle = i['QuestionTitle'],
        )
        questionObj.save()
        for j in i['Responses']:
                correctAnsObj = CorrectAns.objects.create(
                    ansId = j['Id'],
                    responseText1 = myResponseText1,
                    isDeleted = j['IsDeleted'],
                )
                correctAnsObj.questionRef.add(questionObj)
                correctAnsObj.save()
                Questions.correctAnsRef.add(correctAnsObj)
    return

теперь он показывает ошибку со строкой:

Questions.correctAnsRef.add(correctAnsObj)

Нравится:

'ManyToManyDescriptor' object has no attribute 'add'

Пожалуйста, подскажите, как я могу это исправить?

Вы должны добавить его к questionObj, поэтому Questions объект, а не Questionsкласс:

questionObj.correctAnsRef.add(correctAnsObj)

Примечание: обычно модели Django дается сингулярное имя, поэтому Question вместо Questions.

Вернуться на верх