默认情况下,在django表单字段中创建空查询集

The*_*one 151 django django-forms

我有以下形式的字段:

city = forms.ModelChoiceField(label="city", queryset=MyCity.objects.all())
district = forms.ModelChoiceField(label="district", queryset=MyDistrict.objects.all())
area = forms.ModelChoiceField(label="area", queryset=MyArea.objects.all())
Run Code Online (Sandbox Code Playgroud)

区域来自点击城市,区域来自点击区域.随着 queryset=MyDistrict.objects.all()queryset=MyArea.objects.all()形式将非常沉重.默认情况下,如何将查询集设为空?

提前致谢

mar*_*chi 378

这样做可以有一个空的查询集:

MyModel.objects.none()
Run Code Online (Sandbox Code Playgroud)

虽然我不知道您将如何使用该表单,但您可以将其作为您的字段的查询集,以获得您所需的...

您可以在此处找到更多信息

  • 在用例中,您的查询集会根据url参数在视图中更改.然后在您的视图中设置正确的查询集,如下所示:edit_form.fields ["asset"].queryset = Asset.objects.filter(location_id = location_id) (4认同)