新在Symfoob娱乐下载ny 3.4:改善比较约束
2017年9月21日·发表的哈维尔Eguiluz
警告:这篇文章是关于一个不受支持的Symfony的版本。ob娱乐下载其中一些信息可能是过时了。阅读最近的Symfony文档ob娱乐下载。
最初的目的比较约束是对一些预定义的值(如验证属性。“价格必须大于0”,“年龄必须大于或等于18”,等等)。
然而,在Symfony应ob娱乐下载用程序通常比较它们之间(如对象属性的值。“结束日期大于开始日期”,“普通密码不相同的登录”,等等)。
在这些情况下,您可以使用表达式约束定义一个表达式,比较这两个属性:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
使用ob娱乐下载\组件\验证器\约束作为断言;类事件{/ * *@Assert\ DateTime () * /私人美元startDate可以;/ * * *@Assert* \ DateTime ()@Assert表达式\(“价值> this.startDate”) * /私人美元endDate;/ /……}
在Syob娱乐下载mfony 3.4中,我们改进了比较表达式来接受一个新选项propertyPath
它定义了属性的路径,其价值要与:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
使用ob娱乐下载\组件\验证器\约束作为断言;类事件{/ * *@Assert\ DateTime () * /私人美元startDate可以;/ * * *@Assert* \ DateTime ()@Assert\ GreaterThan (propertyPath = " startDate可以")* /私人美元endDate;/ /……}
的值propertyPath
选项可以是任何有效的PropertyAccess组件符号,所以你也可以引用嵌入对象的属性。
发表在#生活在边缘
评论
@Boldizsar是的,你也可以嵌入目标属性。我刚刚更新了博客中提到。谢谢!
迈克尔COULLERET
9月21日表示,2017年在13:43
它将服务。
评论都关门了。
以确保评论保持相关,他们关闭了旧的帖子。
Boldizsár-Zeik Zsombor is a certified Symfony engineer.
Get certified! Online exams available in all countries.
Register Now