forms.py
INCIDENT_LOCATIONS = (
('01. Classroom', '01. Classroom'),
('02. Corridor', '02. Corridor'),
('03. Stairs', '03. Stairs'),
('04. Playground', '04. Playground'),
('05. Sportsground', '05. Sportsground'),
('06. Excursion', '06. Excursion'),
)
class SearchForm(forms.Form):
keywordsearch=forms.CharField(max_length=100,label="search")
incident=forms.CharField(widget=forms.TextInput(attrs={'class':'special'}))
location=forms.CharField(max_length=100)
fromdate = forms.DateField(label="From Date", input_formats=['%d/%m/%Y'], validators=[validate_date])
todate = forms.DateField(label="To Date", input_formats=['%d/%m/%Y'], validators=[validate_date])
1.如何编写css类来增加特定字段的长度,我要求事件字段比keywordsearch字段更长
2.如何在django中创建下拉框。主要目的是选择上述选项中的任何一个。这里选择我想要做的位置字段中的事件位置。我不知道如何在html页面中显示此表单。
3.如何减少表单中日期字段的长度,因为它的长度与普通文本框一样。
请帮我完成上述任务。
由于
答案 0 :(得分:4)
1.如何编写css类来增加特定字段的长度,我要求事件字段比keywordsearch字段更长
您可以使用size
属性
incident=forms.CharField(widget=forms.TextInput(attrs={'class':'special', 'size': '40'}))
2.如何在django中创建下拉框。主要目的是选择上述选项中的任何一个。这里选择我想要做的位置字段中的事件位置。我不知道如何在html页面中显示此表单。
使用ChoiceFIeld
,
location=forms.ChoiceField(choices=INCIDENT_LOCATIONS)
3.如何减少表单中日期字段的长度,因为它的长度与普通文本框一样。
此字段的默认表单窗口小部件是TextInput。因此,与第一名一样,您可以使用size属性。
答案 1 :(得分:1)
编写自己的css类: https://docs.djangoproject.com/en/dev/ref/forms/widgets/#django.forms.Widget.attrs
>>> name = forms.TextInput(attrs={'size': 10, 'title': 'Your name',})
>>> name.render('name', 'A name')
u'<input title="Your name" type="text" name="name" value="A name" size="10" />'
对于创建下拉框,您可以使用: https://docs.djangoproject.com/en/dev/ref/forms/widgets/#selectmultiple
location=forms.CharField(max_length=100 widget=form.SelectMultiple)
对于缩短长度,你可以使用另一个css类,如:
.myclass { width:100px; }