2016-04-21 41 views
1

所需的复选框,我有四个复选框的的ActiveForm:Yii的使用条件

<?= $form->field($model, 'admin')->checkbox() ?> 

<?= $form->field($model, 'newsletterAccess')->checkbox() ?> 

<?= $form->field($model, 'groupAccess')->checkbox() ?> 

<?= $form->field($model, 'templateAccess')->checkbox() ?> 

,当第一个复选框被选中(管理员),该表可在所有四个复选框被选中只能提交。 我的规则应该是什么样子?我试过这样的:

[['newsletterAccess', 'groupAccess', 'templateAccess'], 'compare', 'compareValue' => true, 
      'when' => function ($model) { 
       return $model->admin == 1; 
      } 

但它没有工作。 感谢您的帮助。

回答

1

你需要操作者太

[['newsletterAccess', 'groupAccess', 'templateAccess'], 'compare', 
     'compareValue' => true, 
     'operator' => '==' 
     'when' => function ($model) { 
      return $model->admin == 1; 
     } 
+0

完美的作品,非常感谢! –