【问题标题】:Yii2: Do DefaultValueValidator or FilterValidator influence other validation rules?Yii2: DefaultValueValidator 或 FilterValidator 会影响其他验证规则吗?
【发布时间】:2015-03-19 08:59:00
【问题描述】:

这两个验证器都不是真正的验证器,而是可以更改属性值。如果在模型规则中使用了这样的伪验证器,它们对其他真正的验证器有影响吗?

例如,当默认验证器和必需验证器用于同一属性时,必需验证器永远不会失败吗?

或者这样的验证器是否有任何优先级?还是验证规则的顺序至关重要?

【问题讨论】:

    标签: validation yii2


    【解决方案1】:

    pseudo 验证器会更改属性的值。因此,相同属性上的任何后续验证器都将根据更改的值进行验证。 顺序至关重要。验证器是从rules() 使用\yii\base\Model::createValidators() 按照它们在rules() 中出现的顺序创建的。

    对于您的具体示例,当 required 规则首先出现时,对其进行验证将返回 false。然而,当default 规则是第一个时,该属性已经有一个设置值,因此required 的验证将返回true

    【讨论】:

      猜你喜欢
      • 2018-09-05
      • 1970-01-01
      • 2012-09-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多