Django:如何将数据保存到ManyToManyField?

Django:如何将数据保存到ManyToManyField?,django,django-models,Django,Django Models,我有一个关于以下模型的问题。我想从views.py中填充ManyToManyField,而不是从Admin中填充 但是如何将数据添加到genres字段,即ManyToManyField 视图.py content = Movie_Info(id = m_id, title = data[0].get('title'), overview = data[0].get('overview'),

我有一个关于以下模型的问题。我想从views.py中填充
ManyToManyField
,而不是从Admin中填充

但是如何将数据添加到
genres
字段,即
ManyToManyField

视图.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()
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)
型号.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()
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)
使用:


与修改其他字段不同,在执行此操作之前,两个模型都必须存在于数据库中,因此在添加多对多关系之前,必须调用
save
。因为add会立即影响数据库,所以您不需要事后保存。

不相关的风格建议:在Python/Django中,强烈建议命名类
MovieInfo
MovieInfoGenre
(或者干脆
MovieGenre
甚至
Genre
),而不是在其中使用下划线。此外,这可能是一个非常严重的格式问题,但在制作
内容时,缩进量非常大另外,
release\u date
应该是
DateField
@Dougal,谢谢你的建议。关于缩进,我正在使用一个插件来为我实现;)另外,模型中不需要特殊的“id”字段。Django会自动为你做。谢谢,我还有一个问题要问。流派应该是独一无二的。对于以下代码,如果添加两次相同的类型,则会引发错误。所以我想知道,我是否应该抓住这个错误并做些什么。或者有没有更好的方法来解决这个问题?改用“添加会立即影响数据库”这正是我想要的答案,谢谢