在我看来,我有类似的东西:
form = UserCreationForm()
return render(request, "mypage.html", {'form': form})
在我看来,我有一些魔力:
{{ form.as_p }}
它为表单生成 HTML。如何自定义此 HTML?
在我看来,我有类似的东西:
form = UserCreationForm()
return render(request, "mypage.html", {'form': form})
在我看来,我有一些魔力:
{{ form.as_p }}
它为表单生成 HTML。如何自定义此 HTML?
如果我正确理解了您的问题,那实际上很简单。格式取自 django 文档,如下所示:
<form action="/contact/" method="post">
{{ form.non_field_errors }}
<div class="fieldWrapper">
{{ form.subject.errors }}
<label for="id_subject">Email subject:</label>
{{ form.subject }}
</div>
<div class="fieldWrapper">
{{ form.message.errors }}
<label for="id_message">Your message:</label>
{{ form.message }}
</div>
<div class="fieldWrapper">
{{ form.sender.errors }}
<label for="id_sender">Your email address:</label>
{{ form.sender }}
</div>
<div class="fieldWrapper">
{{ form.cc_myself.errors }}
<label for="id_cc_myself">CC yourself?</label>
{{ form.cc_myself }}
</div>
完整的说明可以在这里找到: https ://docs.djangoproject.com/en/dev/topics/forms/ 只需向下滚动到“自定义表单模板”部分
form.as_p
使用内部 Django 逻辑呈现表单(基本上是包含在段落标签中的一大串字段)
您不能自定义它(除非您覆盖as_p
Form 子类上的方法)。
您可以做的只是创建自己的 HTML 并在其中手动呈现表单字段。
所以,在你的mypage.html
你可以这样做:
<form>
{{ form.username }}
{{ form.password }}
</form>
每个字段都有许多可用的方法,只需阅读文档:https ://docs.djangoproject.com/en/dev/ref/forms/api/