2016-06-27 72 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值必須大於填用戶