我已经重新定义了联系我们页面的表单,这是标准django-form
的东西,但我正在努力理解如何在字段中编写<inpout>
描述。
准确地说,我想在字段中写Name
<input>
那么我该怎么做。我像{{ form.name }}
一样定义<input>
字段,那么我如何定义它更像<input type="name" class="form-control" id="id_name" placeholder="Your Name">
。
<div class="col-xs-12 col-sm-12 col-md-4 col-md-offset-2 col-lg-4">
{% if form.errors %}
<p style="color: red">
Please correct the error{{ form.errors|pluralize }} below.
</p>
{% endif %}
<form class="form-horizontal" action="." method="POST">
{% csrf_token %}
<div class="field form-group">
{{ form.name.errors }}
<label for="id_name" class="control-label"></label>
<div class="col-sm-10">
{{form.name}}
</div>
</div>
<div class="field form-group">
{{ form.email.errors }}
<label for="id_email" class="control-label"></label>
<div class="col-sm-10">
{{ form.email }}
</div>
</div>
<div class="field form-group">
{{ form.phone_number.errors }}
<label for="id_phone_number" class="control-label"></label>
<div class="col-sm-10">
{{ form.phone_number }}
</div>
</div>
<div class="field form-group">
{{ form.message.errors }}
<label for="id_message" class="control-label"></label>
<div class="col-sm-10">
{{ form.message }}
</div>
</div>
<div class="form-group">
<div class="col-sm-12">
<input type="submit" class="btn btn-primary btn-block" value="Submit"></button>
</div>
</div>
</form>
</div><!--/end form colon -->
如果你想修改占位符文本,或者Django创建的字段的其他值,可以使用小部件的attrs
在表单代码中完成:
class MyForm(forms.Form):
name = forms.CharField(
widget=forms.TextInput(
attrs={
'class': 'my-class',
'placeholder': 'Name goes here',
}))
如果你打算将所有代码保留在模板中,你必须手动创建每个输入字段,而不是使用 Django 渲染的输入字段。不过,您仍然可以访问模板中生成的字段的值来帮助您执行此操作。
<input name="{{ form.name.name }}" type="text" placeholder="Name field">