ValueError问题的解决

博客Entry和作者Author之间定义成了多对多的关系,Model类Entry中有 authors = models.ManyToManyField(Author)
在添加博客记录时设置多对多的关系,出现了问题:


ValueError:"" need to have a value for field 'id' before this many-to-many relationship can be used


因为entry没有被写入到数据库,访问它的authors属性会有问题


解决办法:
先设置好Entry对象的其他非空属性,并保存,再设置多对多关系:
entry = Entry()
entry.headline = 'headline'
entry.body_text = "body text"
...
entry.save()
entry.authors.add(author)

entry.save()



你可能感兴趣的:(Django)