我尝试在django中创建一个组合框。我只发现用HTML做。是否有基于表单的django代码来执行此操作? 例如,我想要一个我可以选择城市的组合框,然后选择并点击提交以将城市发送到另一个页面。 感谢
答案 0 :(得分:5)
如果你有一个静态城市列表,可以使用ChoiceField
创建一个组合框:
from django import forms
class SelectCityForm(forms.Form):
CITY_1 = 'city_1'
CITY_2 = 'city_2'
CITY_CHOICES = (
(CITY_1, u"City 1"),
(CITY_2, u"City 2")
)
cities = forms.ChoiceField(choices=CITY_CHOICES)
如果您要将城市保存到数据库中,则可以使用ModelChoiceField
:
class SelectCityForm(forms.Form):
cities = forms.ModelChoiceField(queryset=City.objects.all())
答案 1 :(得分:2)
如果你有一个城市列表,你可以使用这样创建一个form
:
class myForm(forms.Form):
city_list = ['city1','city2']
city = forms.ChoiceField(choices=city_list)
但是,如果您的城市来自您的模型,您可以使用此:
class myForm(forms.Form):
city = forms.ModelChoiceField(queryset=City.objects.all())