다음 모델에 관한 질문이 있습니다. 내가 관리자로부터 수행하는 대신 views.py에서 ManyToManyField
을 채우고 싶습니다.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"필드가 필요 없습니다. 장고가 자동으로 수행합니다. –