检测 Twig 模板中的特定表单约束故障


Detecting specific form constraint failure in Twig template

我有一个Symfony形式的字段,其中包含三个约束。

对于三个约束之一,如果验证失败,我想在重新加载页面后触发表单上的弹出通知。这超出了 Twig form_errors()功能的范围。

有没有办法找出我的 Twig 模板中单个字段的特定约束是否失败?我现在正在努力寻找访问此信息的方法。(如有必要,我不反对从我的控制器将标志传递给模板。

(可能值得补充的是,这是一个Silex项目。

您可以像这样检查form.field.vars.errors

<input type="text" name="msisdn" 
    class="{{ form.msisdn.vars.errors|length ? 'error' : '' }}"  
    value="{{ form.msisdn.vars.value }}" />

实际错误在一个数组中,您可以像这样单独循环和输出它们:

<span class="errorMessage">
    {% for error in form.msisdn.vars.errors %}
        {{ error.message }}{% if not loop.last %},{% endif %}
    {% endfor %}
</span>