如何处理不同的错误级别

编辑本页

警告:您正在浏览的文档欧宝体育电话欧宝娱乐app下载地址Symfony 5.3,现已不再维护。

本页的更新版本用于Sy欧宝娱乐app下载地址mfony 6.2(当前稳定版本)。

  • 对验证约束应用不同的错误级别;<李>根据配置的错误级别自定义错误消息。

    有效载荷选项,为每个约束配置错误级别:

    • 注释
    • 属性
    • YAML
    • XML
    • PHP
    12 3 4 5 6 7 8 9 10 11 12 13 14 16 17 18 19 20 21 22
    / / src /实体/ User.php名称空间应用程序实体使用欧宝娱乐app下载地址组件验证器约束作为断言用户/ * * *@Assert\ NotBlank(有效载荷={“严重性”=“错误”})* /受保护的用户名/ * * *@Assert\ NotBlank(有效载荷={“严重性”=“错误”})* /受保护的密码/ * * *@Assert\伊班人(有效载荷={“严重性”=“警告”})* /受保护的bankAccountNumber;}

    用户对象失败时,可以使用getConstraint ()方法。每个约束都将附加的有效负载公开为公共属性:

    1 2 3 4 5
    //一个约束验证失败的实例/ /欧宝娱乐app下载地址 Symfony \ \验证器\ ConstraintViolation组件constraintViolation=……;约束constraintViolation->getConstraint ();严重程度约束->有效负载(“严重程度”) ? ?

    例如,您可以利用这一点来自定义form_errorsblock,以便将严重性作为一个额外的HTML类添加:

    1 2 3 4 5 6 7 8 9
    {% -form_errors - %}{% -如果错误|长度> 0 -%}<ul>{% -错误中的错误-%}<{{error.cause.constraint.payload.severity ??"}}>{{错误。消息}}>{% -endfor- - - - - - %}ul>{% -endif- - - - - - %}{% -endblockform_errors - %}

    另请参阅

    有关自定义表单呈现的更多信息,请参见如何自定义表单渲染

  • 此工作,包括代码示例,是根据创作共用BY-SA 3.0许可证。
    欧宝娱乐app下载地址Symfony 5.3支持通过JoliCode