随着时间的推移,我正在搞乱Django。我一直在关注一些教程,今天正在使用django-widget-tweaks
添加Bootstrap到表单。它"工作"但我刚发现奇怪的事。我正在创建一个必需的"个人资料"在User-X首次登录时表单。该模型和形式有两个地址"领域。该模型将它们命名为#34;地址1和#34; &安培; "地址2&#34 ;.但是,在呈现表单时,Address2的label
文本为" Address1"。对于Address1字段,lavel是正确的。
所涉及形式的psrt:
...
{% for field in profileForm.visible_fields %}
<div class="form-group">
{{ field.label_tag }}
{% if profileForm.is_bound %}
{% if field.errors %}
{% render_field field class="form-control is-invalid" %}
{% for error in field.errors %}
<div class="invalid-feedback">
{{ error }}
</div>
{% endfor %}
{% else %}
{% render_field field class="form-control is-valid" %}
{% endif %}
{% else %}
{% render_field field class="form-control" %}
{% endif %}
{% if field.help_text %}
<small class="form-text text-muted">{{ field.help_text }}</small>
{% endif %}
</div>
{% endfor %}
<button type="submit">Submit</button>
</form>
...
来自views.py:
...
def create_profile(request):
if request.method == 'POST':
form = ProfileForm(request.POST)
if form.is_valid():
pass # does nothing, just trigger the validation
else:
form = ProfileForm()
return render(request, 'MySite/index.html', {'profileForm': form})
...
Chrome的Developertools将呈现的html显示为:
<div class="form-group">
<label for="id_Address1">Address1:</label>
<input type="text" name="Address1" maxlength="38" class="form-control" required="" id="id_Address1"></div>
<div class="form-group">
<label for="id_Address2">Address1:</label>
<input type="text" name="Address2" maxlength="38" class="form-control" id="id_Address2"></div>
由于某种原因,标签&#34;值&#34;这两个领域都是一样的。
我错过了什么?
**编辑**我错过的是一个贴错标签&#34;标签&#34;在表单代码中。很长一段时间都出演并没有看到它。