我最近从使用Django中的简单表单切换到模型表单。我现在尝试在我的表单中使用一个已设置字段名称的选择字段(例如:欧洲、北美、南美)。..)我以为我只会在for字段中添加一个选择输入类型,但它显示为只是一个常规的文本输入。选择字段应该是“大陆”。有人知道怎么做吗??
class TripForm(forms.ModelForm):
# city = forms.TextInput()
# country = forms.TimeField()
# description = forms.Textarea()
# photo = forms.ImageField()
class Meta:
model = Trip
fields = ('city', 'country', 'continent', 'description', 'photo')
widget = {
'city': forms.TextInput(attrs={'class': 'form-control'}),
'country': forms.TextInput(attrs ={'class': 'form-control'}),
'continent': forms.SelectMultiple(attrs= {'class':'form-control'}),
'description': forms.TextInput(attrs = {'class': 'form-control'}),
# 'photo': forms.ImageField(attrs = {'class': 'form-control'}),
}
[![enter image description here][1]][1]
This is the form continent should show as a select.
2条答案
按热度按时间pcrecxhr1#
在这里你可以使用django表单提供的ModelChoiceField。定义一个包含所有国家/地区的Country模型,并在此处将其用作QuerySet。它也将是动态的,可以稍后更改。
3htmauhk2#
我也有类似的问题,我就这样解决了。对不起,如果字段是意大利语
forms.pyclass FormCapitaliBilancio(forms.ModelForm):
模板
views.py
def capitaliContabilitaAggiorna(request,id_capitalolo):abilitazione = SoggettoMenu.objects.filter(utente_menu_id=请求。user,menu_princ_id=6)