【发布时间】:2019-11-20 10:36:30
【问题描述】:
我有一个 django 模型,它是一条消息。它的名称是 CharField,还有一个用户数组,即 ManyToManyField。
这就是我的 API 的样子:
[
{
"id": 13,
"content": "hej",
"date": "2019-07-09",
"sender": {
"id": 1,
"username": "william"
}
},
{
"id": 14,
"content": "hej william",
"date": "2019-07-09",
"sender": {
"id": 3,
"username": "ryan"
}
}
]
我尝试通过邮递员 POST 发送的内容:
{
"content": "Hello",
"sender": {"username": "william"},
"date": "2019-09-02"
}
我得到的错误:
sqlite3.IntegrityError: NOT NULL constraint failed: chat_message.sender_id
ManyToManyField(Userprofile=User):
class Message(models.Model):
sender = models.ForeignKey(UserProfile, on_delete=models.CASCADE, related_name="sendermessage")
content = models.CharField(max_length=500)
date = models.DateField(default=date.today)
canview = models.ManyToManyField(UserProfile, blank=True, related_name="messagecanview")
class Meta:
verbose_name_plural = 'Messages'
def __str__(self):
return "{sender}".format(sender=self.sender)
【问题讨论】:
标签: django api url django-rest-framework many-to-many