目前我正在使用validation.yml进行验证。一切正常。 但我需要在特定条件下添加验证规则。
我有一个选择框来选择一个type
,一个文本框来输入other_type
。如果选择type
为other
,我需要强制文本框。
如何在提交表单后在控制器中执行此验证?
答案 0 :(得分:0)
如果我有一个具有属性类型和其他属性other_type的实体,也许我会通过创建一个类约束来解决问题。您可以找到有关它的食谱文章here。这些类约束对于您描述的情况非常有用,因为在ConstraintValidator的validate方法中,您可以轻松验证type属性的值,如果将其设置为other,则可以检查other_type属性。如果验证标记实体无效,则可以使用验证的上下文的addViolationAt方法,以便将错误消息添加到实体的other_type属性。最后,您可以使用yml轻松地将验证器设置为您的实体。