2016-06-27 73 views
0

如何为yii2中的字段添加自定义验证。 文本框值不应超过当前模型的表格字段值。 有没有办法从控制器添加新的规则?Yii2:动态最大值验证规则

例如:$model->f1应该小于或等于$model->f2

我用dynamicmodel得到了一些观点。但我只有一个领域要检查。

它也应该在客户端工作。

有无论如何从控制器或活动形式添加自定义规则?

谢谢。

回答

1

添加到您的验证规则模型,以确保F2更大f1的值是< = f2。

​​
1

可以使用CompareValidator compareValue属性为: -

其保存在数据库中
public function rules() 
{ 
    return [ 
     // Your Validation rules as 
     [ 
      'f2' , 
      'compare' , 
      'compareValue' => ArrayHelper::getValue($this , ['oldAttributes' ,'f1']), 
      'operator' => '<=', 
     ] 
    ]; 
} 

型号F1值必须大于填用户