Я работаю над сайтом вопросов и ответов. Тем, что я хочу отметить Вопрос имеет ответ каждый раз, когда добавляется новый ответ на этот вопрос.
Модель вопроса
class Question(models.Model):
question = models.CharField(max_length=400)
uid = models.ForeignKey("User",on_delete=models.SET_DEFAULT,default=1,related_name='user_q_id_set')
vote = models.IntegerField(default=0)
created_at = models.DateTimeField(auto_now_add=True)
catitle = models.ForeignKey("Category", on_delete=models.CASCADE)
editUser = models.ManyToManyField("User",related_name='user_q_edit_set',null=True,blank=True)
hasAnswer = models.BooleanField(default=False)
Модель ответа
class Answer(models.Model):
answer = models.TextField()
qid = models.ManyToManyField("Question")
uid = models.ForeignKey("User",on_delete=models.CASCADE,related_name='user_a_id_set')
vote = models.IntegerField(default=0)
created_at = models.DateTimeField(auto_now_add=True)
editUser = models.ManyToManyField("User",related_name='user_a_edit_set',null=True,blank=True)
class Meta:
ordering = ['-vote']
def save(self,*args, **kwargs):
self.qid.hasAnswer=True
Это то, что я пытался, но получил ошибку
ValueError at /admin/qa/answer/add/
"<Answer: None>" needs to have a value for field "id" before this many-to-many relationship can be used.
Так как я могу получить изменение hasAnswer на True при каждом добавлении нового ответа?