forms - 如何检查表格中的 Twig 是否有错误?

标签 forms error-handling symfony

除了直接附加到表单字段的特定于表单字段的错误消息外,我想在表单上方显示一条消息,指出表单包含错误。

如果表单有错误,我该如何检入Symfony3 Twig 模板?有used to be something like this in Symfony2:

{% if form.get('errors') is not empty %}
    <div class="error">Your form has errors. Please check fields below.</div>
{% endif %}

但这在Symfony3中不起作用。有任何想法吗? (form.vars.errors不起作用。)

最佳答案

使用form.vars.errors:

{% if form.vars.errors is not empty %}
    {# ... #}
{% endif %}

注意! 请注意,如果您的根表单有错误(或者子表单有错误并且允许将错误冒泡到根表单),则这仅表示true。如果表单中的常规子元素有错误,则此结果不会为空!

因此,valid变量可能更合适:

{% if not form.vars.valid %}
    {# ... errors ! #}
{% endif %}

关于forms - 如何检查表格中的 Twig 是否有错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34966369/

相关文章:

html - 联系表单字段没有响应/不会缩放

javascript - 如何记住未提交的表单数据?

python - Django中的异常处理 - 这是必要的吗?

c++ - 如何处理构造函数中的错误值?

php - 在 session 中保存请求

javascript - jQuery 防止提交输入发送表单

c# - ASP MVC - Html.BeginForm 从没有区域的 Controller 的区域内

ms-access - 错误时 GoTo 不工作;代码中断

php - Symfony 6 中的命名路由,内部目录中有 Controller

mysql - 带有 DoctrineExtensions 的 doctrine 2 中的 FIND_IN_SET