Python 如何在django中自定义下拉列表表单元素?
我正在django中创建一个应用程序,我遇到了下一个问题: 我在django中创建了一个表单类,如下所示:Python 如何在django中自定义下拉列表表单元素?,python,django,forms,Python,Django,Forms,我正在django中创建一个应用程序,我遇到了下一个问题: 我在django中创建了一个表单类,如下所示: class A(forms.ModelForm): class Meta: model = ModelA 这样,表单将显示一个下拉列表,其中包含modelA中的所有元素,但我要做的是筛选;我的意思是,我希望下拉列表不显示所有元素。我只想显示modelA中具有attribute1='1'值的元素(attribute1是modelA的属性) 可能吗 谢谢大家! 不知
class A(forms.ModelForm):
class Meta:
model = ModelA
这样,表单将显示一个下拉列表,其中包含
modelA
中的所有元素,但我要做的是筛选;我的意思是,我希望下拉列表不显示所有元素。我只想显示modelA
中具有attribute1='1'
值的元素(attribute1
是modelA
的属性)
可能吗
谢谢大家! 不知道要筛选哪个字段,但可以这样做:
class A(forms.ModelForm):
class Meta:
model = ModelA
def __init__(self, *args, **kwargs):
super(A, self).__init__(*args, **kwargs)
self.fields['your_field'].queryset = self.fields['your_field'].queryset \
.filter(some_filter_value=1)
“这样,表单将显示一个包含模型中所有元素的下拉列表a”:它不会显示。@brunodesshuilliers是正确的。此表单用于创建/编辑
ModelA
的实例。这个模型可能是另一个模型中的外键吗?是的,modelA是另一个模型中的外键在再次阅读问题后,我认为您的意思有所不同,但将等待反馈。