새 주제를 만들려고합니다. 범주 ID는 클라이언트 측의 JavaScript에서 동적으로 결정됩니다. 내가 겪고있는 문제는 카테고리 ID를 전달하고 올바른 카테고리 객체를 조회하려고하지만 모델 양식을 사용하여 카테고리를 카테고리 인스턴스로 검사 한 후에 할당하고 저장할 수 있습니다.Django ModelForms : 외래 키 ID를 사용하여 양식을 저장하려고합니다.
--model.py--
class Topic(models.Model):
category = models.ForeignKey(Category)
--form.py--
class TopicForm(ModelForm):
category = forms.IntegerField(widget=forms.HiddenInput())
class Meta:
model = Topic
fields = ('category')
--view.py--
form = TopicForm(request.POST)
if form.is_valid():
form.save(commit=False) # throws exception category is not a Category instance
form.category = Category.objects.get(pk=form.cleaned_data.get('category'))
form.save()
고마워요! 나는 장고가 장면 뒤에서하는 모든 것을 이해하지 못한다. 그러나 그것은 의미가있다. – Komma