我想在Action控制器内动态添加更多验证。我在config/validator/validation.yaml
中有一个通用验证,但是我想加载并添加其他验证取决于Symfony 4中动作控制器内部的逻辑。我不希望使用验证组,因为我将拥有很多可能性,并且我希望每个逻辑都使用不同的文件。
public function myAction(Request $request, ValidatorInterface $validator)
{
...
if($something){
//load a validation1.yaml
}
else{
//load a validation2.yaml
}
$violations = $validator->validate($user);
...
}
常规验证.yaml:
App\Entity\User:
properties:
email:
- NotBlank:
message: "'email' is a mandatory field."
在我的validate1.yaml中:
App\Entity\User:
properties:
firstName:
- NotBlank:
message: "'FirstName' is a mandatory field."
我的validation2.yaml中的其他限制:
App\Entity\User:
properties: