如果返回类$validator->validate( $class );
,Symfony2验证服务似乎会运行所有验证检查。$error
这通常没问题,但我正在寻找halt_on_failure
功能,因为一旦特定属性失败,它会PHP
在正在进行的验证检查中触发错误。
在 Symfony-1 中有很好的记录,halt_on_error
但我不确定这在 Symfony2 中是如何工作的。我找到了对它的引用,但没有示例。
这是一个类似的问题
使用组。Richard Miller
写了一篇关于 SF2 Validation with Groups 的精彩总结。从本质上讲,我所做的只是标记了初始验证步骤,
Step1
而将其余步骤单独保留。然后,您向 Validator 服务发出请求,如下所示:
$this->validator->validate($class, array('step1', 'Default'));
附加 IF 语句。在我的情况下,我使用 API 进行验证,所以我想确保输入是准确的,这样我就不会浪费 API 请求。IF 语句可用于切断 API 请求和return false
.
我选择执行第 2 步。虽然第 1 步可能更好地使用了验证技术,但我并不热衷于需要添加的其他组参数。这是代码维护责任。在 Symfony2.2 中似乎会有一个halt_on_error
特性,这个解决方案应该到时候更新。