【问题标题】:Expression Language Symfony Component - cannot validate empty string表达式语言 Symfony 组件 - 无法验证空字符串
【发布时间】:2014-04-03 23:28:28
【问题描述】:

我尝试在验证中使用表达式语言,但发现了一些奇怪的东西。

让我们考虑一下 Dog 模型

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 = '';
    ...
}

这个在验证过程中没有返回任何错误???为什么?

【问题讨论】:

    标签: php validation symfony


    【解决方案1】:

    哦,我找到了你可能感兴趣的行:)

    第 47 行,vendor/symfony/symfony/src/Symfony/Component/Validator/Constraints/ExpressionValidator.php

    if (null === $value || '' === $value) {
      return;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-06-14
      • 1970-01-01
      • 1970-01-01
      • 2019-02-11
      • 1970-01-01
      • 1970-01-01
      • 2018-10-10
      • 1970-01-01
      相关资源
      最近更新 更多