2017-02-14 48 views
0

我使用我的模型中的值填充下拉框,我的模型中有五个值,我只想在这个特定的实例中显示三个这些值,我将如何做到这一点。如何过滤下拉列表中的值django

forms.py

class namesForm(forms.Form): 
    names = forms.ModelChoiceField(
     queryset=Names.objects.order_by('name').exclude(name='Josh','Tom'), 
     label = "Name:", 
     widget = Select(attrs={'class': 'span6 small-margin-top small-margin-bottom'}), 
     empty_label = "Select a Name", 
     required=True 
    ) 
+0

您在排除中使用了非常具体的规则,是您的问题的真实案例? –

回答

1

根据您的forms.py代码,我想这是你想要什么:

class namesForm(forms.Form): 
    names = forms.ModelChoiceField(
     queryset=Names.objects.exclude(name__in=['Josh','Tom']).order_by('name'), 
     label = "Name:", 
     widget = Select(attrs={'class': 'span6 small-margin-top small-margin-bottom'}), 
     empty_label = "Select a Name", 
     required=True 
    ) 

行我改变:在

queryset=Names.objects.exclude(name__in=['Josh','Tom']).order_by('name'), 

文档使用__in:
https://docs.djangoproject.com/en/1.10/ref/models/querysets/#in

相关问题