Symfony 表单 - 仅在单击特定按钮时显示错误

Symfony Form - display errors only when specific button is clicked

有什么智能的解决方案可以防止在提交表单但未单击某些指定按钮时显示表单错误?

这是我的控制器的一部分:

$form->handleRequest($request);

if ($form->isValid() && $form->get('pay')->isClicked()) {
    ...
}

您可以将表单按钮是否被点击的值传递回您的 twig 模板并将其用作您的条件:

return array('payIsClicked' => $form->get('pay')->isClicked());

然后在 Twig 中:

{% if payIsClicked %}
    {{ form_errors(form) }}
{% endif %}

如果您不使用错误冒泡并希望将其应用于每个字段,您可以 modify the form_row block 处理该值以及是否显示每个字段的错误(或者只是手动if 个语句)。

这只是一个例子 - 在不了解更多细节的情况下很难回答您的问题。