在Django表单中添加其他HTML并覆盖表单布局的最简单方法是什么?

时间:2017-02-23 15:38:35

标签: django-templates

我使用Django的表单设置表单,并在模板中呈现如下:

{% block content %}
    <h1>Register to join Forge Design</h1>
    <form method="post" action="">
       {% csrf_token %}
       {{ form.as_p }}
       <input type="submit" value="{% trans 'Submit' %}" />
    </form>
{% endblock %}

我有字段名字,姓氏,电子邮件和可用日期,它们将垂直呈现我的字段,其标签保持对齐。我想要的是控制每个字段,以便我将有如下截图中的布局:

Desired form layout

有没有人可以最好地建议如何自定义,以便我可以在诸如“姓名”和“电子邮件地址*”之类的字段之间散布标签,并更改名字和姓氏标签的位置,使它们位于各自的字段下方。这是我必须做的事情,方法是将模板{{form.as_p}}替换为单独的{{form fields}},然后将其包装在div中以便由CSS控制吗?

由于

1 个答案:

答案 0 :(得分:0)

您可以按照表单中的名称

访问每个字段
{{ form.first_name.errors }} # Error of your field first name
{{ form.first_name.label_tag }} # Label of your field first name, generate a label tag
{{ form.first_name }} # Input for your field first name

https://docs.djangoproject.com/en/1.10/topics/forms/#rendering-fields-manually