0

这个问题是我在此处发布的问题及其收到的答案的后续:如何更改 Django Form-Wizard 中模板的布局?

我制作了一个 4 步表单向导。我已经连接了与每个表单对应的 4 个自定义模板。每个这样的模板都扩展了一个名为 form_base.html 的模板。

我想自定义每个表单的布局。所以我需要单独操作表单元素。第一个表单中的一个元素被命名为“comment1”。所以在模板中,我有:

<table>
    <tr>
        <th align="right">
            Comment #1
        </th>
        <td>
            {{ wizard.form.comment1 }}
        </td>
    </tr>
</table>

这部分有效。如果用户在该字段中键入有效条目,它会正常工作。但是,如果用户键入无效数据,则不会出现错误消息。如何解决此问题以正确显示错误消息?

4

1 回答 1

1

文档对此进行了彻底的讨论(https://docs.djangoproject.com/en/dev/topics/forms/?from=olddocs#customizing-the-form-template)。您可以通过分别直接从表单和字段访问它们来访问和显示表单错误和字段错误。这是一个例子。

{{ wizard.form.non_field_errors }}
<table>
    <tr>
        <th align="right">
            Comment #1
        </th>
        <td>
            {{ wizard.form.comment1 }}
        </td>
        {% if wizard.form.comment1.errors %}
        <td>{{ wizard.form.comment1.errors }}</td>
        {% endif %}
    </tr>
</table>
于 2013-02-04T14:17:37.990 回答