我尝试在验证中使用表达式语言,但我发现了一些奇怪的东西。
让我们考虑狗模型
class Dog
{
/**
* @Assert\Expression("this.getName() != 'aa' ", message="Not good!")
*/
private $name = 'aa';
...
}
'aa' != 'aa' => false 所以验证服务报告错误 - 酷, 但让我们尝试对
做同样的事情class Dog
{
/**
* @Assert\Expression("this.getName() != '' ", message="Not good!")
*/
private $name = '';
...
}
这个在验证期间不返回任何错误???为什么?
最佳答案
哦,我找到了您可能感兴趣的行:)
第 47 行,vendor/symfony/symfony/src/Symfony/Component/Validator/Constraints/ExpressionValidator.php
if (null === $value || '' === $value) {
return;
}
关于php - 表达式语言 Symfony 组件 - 无法验证空字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22850859/