一尘不染

Django,ModelChoiceField()和初始值

django

我正在使用这样的东西:

field1 = forms.ModelChoiceField(queryset=...)

如何使我的表单显示所选的值?


阅读 589

收藏
2020-03-31

共1个答案

一尘不染

如果要设置默认初始值,则应initial像其他表单字段一样进行定义,只是将其设置为id。

说你有field1这样的:

class YourForm(forms.Form):
    field1 = forms.ModelChoiceField(queryset = MyModel.objects.all() )

那么你在创建表单时就需要将初始设置如下:

form = YourForm(initial = {'field1': instance_of_mymodel.pk })

而不是:

form = YourForm(initial = {'field1': instance_of_mymodel })
2020-03-31