我有關於以下模型的問題。我想從views.py中填入ManyToManyField
,而不是從管理員那裏填寫。Django:如何將數據保存到ManyToManyField?
但是,如何將數據添加到genres
字段即ManyToManyField
?
views.py
content = Movie_Info(id = m_id,
title = data[0].get('title'),
overview = data[0].get('overview'),
release_date = data[0].get('release_date'),
)
content.save()
models.py
class Movie_Info_genre(models.Model):
genre = models.CharField(max_length=100)
class Movie_Info(models.Model):
id = models.IntegerField(primary_key=True)
title = models.CharField(max_length=100, blank=True, null=True)
overview = models.TextField(blank=True, null=True)
release_date = models.CharField(max_length=10, blank=True, null=True)
genres = models.ManyToManyField(Movie_Info_genre)
無關風格的建議:在Python/Django中,強烈建議命名類'MovieInfo'或'MovieInfoGenre'(或者只是'MovieGenre'或者甚至'Genre'),而不是在那裏使用下劃線。另外,這可能是一個SO格式問題,但是在製作「內容」時會產生一定程度的縮進。 :)另外,'release_date'應該可以是'DateField'。 – Dougal 2012-04-28 17:59:42
@Dougal,謝謝你的建議。關於縮進,我正在使用一個插件,這對我來說;) – starcorn 2012-04-28 20:22:40
另外,模型中不需要特殊的「id」字段。 Django自動爲你做。 – 2015-09-21 13:09:07