我在自己的应用程序(不是 Symfony)中使用 Symfony 验证。我希望它返回违规行为,因为我没有填充 Id 属性:
$user = new User();
$user->setId('');
//...
$validator = \Symfony\Component\Validator\Validation::createValidator();
$errors = $validator->validate($user);
var_dump(count($errors)); exit; // outputs: 0
但是,验证不会返回任何违规。
这是我的带有约束注释的用户类:
use Symfony\Component\Validator\Constraints as Assert;
class User {
/**
* @Assert\NotBlank
*/
private $id;
//...
public function getId(): string {
return $this->id;
}
public function setId(string $id): void {
$this->id = $id;
}
//...
我哪里错了?根据文档,空白字符串应该触发违反此约束 - https://symfony.com/doc/current/reference/constraints/NotBlank.html