我如何改变查询集上的SelectField?



我有一个表单,和一个选择输入,我需要改变查询集的选择,我怎么能做到这一点?

my form example:

class myModelForm(forms.ModelForm):
class Meta:
model = myModel
fields = '__all__'

尝试重写__init__并在您的字段上设置查询集:

class myModelForm(forms.ModelForm):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.fields['<your_field_name'].queryset = <your_queryset>

如果你想让一个表单只捕获模型的一些字段,你必须指定这样的字段:

class Meta:
model = myModel
fields = ['field1','field3','field12']

如果你想在表单进入视图后对其进行更改:

form = myModelForm(request.POST)
form.cleaned_data['field1'] = 'change what you want'

最新更新