我正在使用Django CreateView,在模板中我可以单独设置标签和字段。但是,我无法添加我需要的引导类。目前,我有以下表格。
<form action="" method="post" class="form-horizontal">{% csrf_token %}
<div class="form-group">
<label class="control-label col-xs-1" for="name">{{ form.name.label }}:</label>
<div class="col-xs-9">
{{ form.name }}
</div>
</div>
<div class="form-group">
<label class="control-label col-xs-1" for="name">{{ form.code.label }}:</label>
<div class="col-xs-9">
{{ form.code }}
</div>
</div>
<div class="form-group">
<label class="control-label col-xs-1" for="name">{{ form.phone.label }}:</label>
<div class="col-xs-9">
{{ form.phone }}
</div>
</div>
<input class="btn btn-primary col-xs-offset-1 col-xs-9" type="submit" value="Create" />
</form>
如何在模板变量名称,代码和手机中添加类?
答案 0 :(得分:4)
您只需要覆盖表单的__init__
方法,并使用相应的Bootstrap类设置每个字段的widget.attrs
。例如:
class MyModelForm(forms.ModelForm):
def __init__(self, *args, **kwargs):
super(MyModelForm, self).__init__(*args, **kwargs)
self.fields['name'].widget.attrs = {
'class': 'form-control'
}
self.fields['code'].widget.attrs = {
'class': 'form-control'
}
self.fields['phone'].widget.attrs = {
'class': 'form-control'
}
class Meta:
model = MyModel
# your other Meta options
然后,在CreateView
中,使用表单:
class YourView(CreateView):
form_class = MyModelForm
....