1
所以我使用的表單模板設置動態的選擇,我發現here動態形式返回KeyError異常
,因此我得到了
*forms.py*
class selectForm2(forms.Form):
def __init__(self, *args, **kwargs):
choices = kwargs.pop('my_choices')
super(selectForm2, self).__init__(*args, **kwargs)
self.fields["select_fields"] = forms.ChoiceField(choices=choices)
,並在我的意見,我有
form = selectForm2(my_choices = models())
哪裏模型()創建元組,每個元組都有一個模型名稱和一個模型表:
def models():
apps = get_app('Directories')
for model in get_models(apps):
model_classes.append((model._meta.verbose_name, model._meta.db_table),)
return model_classes
但是當我運行它,my_choices
通常在一個視圖返回在choices = kwargs.pop('my_choices')
發佈完整的回溯。它真的在'form = selectForm2(my_choices = models())'行拋出異常,還是在別的地方? – lanzz
我期望你有多種形式的實例,例如一次用於GET,一次用於POST,並且你忘記了在其中一箇中傳遞「選擇」。 –
確實......就是這樣。我很困惑,因爲調試器提到的KeyError是在forms.py不在我的意見... – per7inac1ousQ