Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Symfony2在字段旁边和表单顶部显示表单错误_Php_Symfony - Fatal编程技术网

Php Symfony2在字段旁边和表单顶部显示表单错误

Php Symfony2在字段旁边和表单顶部显示表单错误,php,symfony,Php,Symfony,在Symfony2中,如何使用小树枝模板在每个字段旁边和表单顶部显示表单错误 目前,通过在每个字段上设置error\u bubbling为true或false,我只得到了其中一个 谢谢我可以建议您的解决方案是对对象进行第二次明确的验证,并将错误发送到模板。这样,第一个隐式验证在表单对象内完成,错误绑定到字段(不要使用错误冒泡)。第二次验证将为您提供一个关于错误的迭代器,您可以将该迭代器传递给模板以显示在表单顶部。然后,您将把错误放在每个字段的旁边,也放在表单的顶部 基于StackOverflow

在Symfony2中,如何使用小树枝模板在每个字段旁边和表单顶部显示表单错误

目前,通过在每个字段上设置
error\u bubbling
为true或false,我只得到了其中一个


谢谢

我可以建议您的解决方案是对对象进行第二次明确的验证,并将错误发送到模板。这样,第一个隐式验证在表单对象内完成,错误绑定到字段(不要使用错误冒泡)。第二次验证将为您提供一个关于错误的迭代器,您可以将该迭代器传递给模板以显示在表单顶部。然后,您将把错误放在每个字段的旁边,也放在表单的顶部

基于StackOverflow的问题,我建议您这样做。检查具体答案

这里是控制器的代码草图(我没有测试任何东西):

和模板中的代码:

{# Code in a twig template #}
<ul id="error-list">
    {% for error in errors %}
        <li> error.message </li>
    {% endfor %}
</ul>

{# Display your form as usual #}
{#细枝模板中的代码#}
    {错误%中的错误为%0}
  • 错误消息
  • {%endfor%}
{#像往常一样显示您的表单#}

如果正确地记住,有一种方法可以从表单中检索所有错误,并且仍然在每个字段上设置错误。根据我的记忆,它是表单视图上的一个特殊属性,类似于
form.errors
。但是我记不起或者找不到任何关于这个的信息。因此,就目前而言,这是我能找到的最好的方法。

您应该做的是使用表单错误,这些表单错误已经在视图变量中可用,如下所述:

请看下面的评论:

在新版本上使用vars.errors,或者只转储表单字段以查看属性。 因为这部分取决于Symfony版本


如果我们从全局角度来看,第二次显式验证听起来不太好。假设我们的应用程序中有50个表单。。是 啊看看我的答案。
{# Code in a twig template #}
<ul id="error-list">
    {% for error in errors %}
        <li> error.message </li>
    {% endfor %}
</ul>

{# Display your form as usual #}