我有一个表单,我希望能够让人们使用1个表单字段选择国家,地区或城市(因此他们只需选择1)。我正在使用django-autocomplete-light,所以我的计划是将所有3个模型字段组合成1个表单字段 - 用户搜索并选择他们想要的字段并将其保存到相关的模型字段。
经过大量的搜索,却无法找到任何相关内容 - 任何想法?
这是我目前的表单,每个字段分开:
class PostForm(forms.ModelForm):
country = forms.ModelChoiceField(Country.objects.all(),
widget=autocomplete_light.ChoiceWidget('CountryAutocomplete',
attrs={
'minimum_characters': 1,
}))
region = forms.ModelChoiceField(Region.objects.all(),
widget=autocomplete_light.ChoiceWidget('RegionAutocomplete',
attrs={
'minimum_characters': 1,
}))
city = forms.ModelChoiceField(City.objects.all(),
widget=autocomplete_light.ChoiceWidget('CityAutocomplete',
attrs={
'minimum_characters': 1,
}))
class Meta:
model = Post
exclude = ('user', 'active',)
def __init__(self, *args, **kwargs):
self.helper = FormHelper()
self.helper.layout = Layout(
Fieldset(
'',
'post',
'link',
'country',
'region',
'city',
),
ButtonHolder(
Submit('submit', 'Submit', css_class='btn btn-success')
)
)
super(PostForm, self).__init__(*args, **kwargs)
正如您所看到的,我使用的是django-autocomplete-light和django-crispy-forms
不知道从哪里开始,所以指导和示例会非常棒!