我刚刚开始学习 Django,我想在 ModelChoiceField 中使用不同的查询集。
我有 3 个这样的模型:
class Politic(models.Model):
name = models.CharField(max_length=100)
class Economic(models.Model):
name = models.CharField(max_length=100)
class Category(models.Model):
politic = models.ForeignKey(Politic, blank = True, null = True)
economic = models.ForeignKey(Economic, blank = True, null = True)
还有这样的表格:
class MyForm(forms.Form):
choice = forms.ChoiceField(choices = (("0", u"---------"), ("1", u"Politic"),
("2", u"Economic")),
required=False)
category = forms.ModelChoiceField(queryset=Economic.objects.all(),
required=False)
在我的模板中,我使用 Ajax 来根据我的选择字段使用包含全部Politic
或值的列表填充我的类别字段。
但是如果我选择,我的表单验证会出现问题,因为我的类别字段的查询集是,不是。
如何更改我的动态查询集?有任何想法吗?Economic
"Politic"
Economic.objects.all()
Politic.objects.all()