下記のモデルに関するご質問があります。私はManyToManyField
を管理者からではなくviews.pyから移入したいと思います。Django:ManyToManyFieldにデータを保存するにはどうすればいいですか?
ManyToManyField
のgenres
フィールドにデータを追加するにはどうすればよいですか?
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の書式設定の問題ですが、 'content'を作るときにあなたは馬鹿げた量のインデントがあります。 :)さらに、 'release_date'は' DateField'でなければなりません。 – Dougal
@Dougal、アドバイスをいただきありがとうございます。字下げについては、私のためにそれを行うプラグインを使用しています;) – starcorn
プラス、モデルの特別な "id"フィールドの必要はありません。 Djangoは自動的にそれを行います。 –