Django 正在尝试筛选ChoiceField的内容

Django 正在尝试筛选ChoiceField的内容,django,forms,field,choicefield,Django,Forms,Field,Choicefield,(我的英文不好,抱歉)我在创建按位置搜索的表单时遇到问题:我当前的form.py如下所示: from models import City, Zone class SearchForm1(forms.Form): cityf = forms.ModelChoiceField(queryset=City.objects.all(), empty_label="none") zonef = forms.ModelChoiceField(queryset=Zone.objects.all

(我的英文不好,抱歉)我在创建按位置搜索的表单时遇到问题:我当前的form.py如下所示:

from models import City, Zone

class SearchForm1(forms.Form):
   cityf = forms.ModelChoiceField(queryset=City.objects.all(), empty_label="none")
   zonef = forms.ModelChoiceField(queryset=Zone.objects.all(), empty_label="none")
但这是显示所有城市和地区存在于数据库中,我试图使在第一个字段中显示所有城市,在第二个字段中仅显示与所选城市对应的那些地区

我试图这样做:

class SearchForm1(forms.Form):
   cityf = forms.ModelChoiceField(queryset=City.objects.all(), empty_label="none")
   zonef = forms.ModelChoiceField(queryset=City.objects.get(
             name_city="cityf").zone_set.all(), empty_label="none")
^但我收到了这个错误:^


我也一直在考虑这个问题:但最终它不需要离开它,有人可以帮助我吗?

你不能这样做。因为在渲染表单时,尚未选择城市(第一个字段)

您可以采用两步向导式的形式来完成。第一种形式只有城市,第二种形式只有区域。在第二个表单中,使用在第一个表单中选择的城市过滤分区


或者,您可以使用javascript对其进行修改,根据第一个字段过滤第二个字段。

您可能希望使用中的功能。请查看此重复问题的答案:


非常感谢,请尝试创建两个表单,但您可以给我一个示例,说明如何使用JavaScript实现这一点?
Exception Type: DoesNotExist
Exception Value:

City matching query does not exist.

Exception Location: