[英]How to get the list of “objects” from a queryset in a Foreign Key relationship in Django
[英]How to create a Django form from foreign key relationship?
我想創建一個多選問題表格,其中所有指向該問題的外鍵指向的選擇都顯示為復選框。
從類似的問題中,我收集到子類化ModelForms
可能是實現此目的的方法。 但是我不知道如何將特定的question_id
傳遞給ModelForm
。
目前,我正在嘗試以下操作:
來自model.py
:
class Question(models.Model):
question = models.CharField(max_length=200)
creationDate = models.DateTimeField('date published')
author = models.ForeignKey(User)
def __unicode__(self):
return self.question
class Choice(models.Model):
question = models.ForeignKey(Question)
choice = models.CharField(max_length=200)
correct = models.BooleanField()
def __unicode__(self):
return self.choice
因此,在forms.py
,我嘗試創建這樣一種形式:
class QuestionForm(forms.Form):
def __init__(self, *args, **kwargs):
super(QuestionForm, self).__init__(*args, **kwargs)
question_id = kwargs.pop('question')
self.fields['checkboxes'] = forms.ModelChoiceField(
queryset = Choice.objects.filter(question = question_id))
在views.py
,我創建一個QuestionForm
,將question_id
作為構造函數參數傳遞。 但是我不斷收到NameError "name 'question_id' is not defined
在構造MOdelChoiceField的QuestionForm中NameError "name 'question_id' is not defined
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.