复选框列表yii2上的特别验证

时间:2015-07-14 14:58:59

标签: php validation yii2

我有一个带模型的activeForm

<?= $form->field($model, 'name')->textInput() ?>
<?= $form->field($model, 'address')->textInput() ?>
<?= $form->field($dynamicModel, 'brands')->checkboxList($brands); ?>
...

我也在使用ajax验证 现在我想在复选框列表中添加验证

我发现了这个:http://www.yiiframew...-hoc-validation
而这:http://www.yiiframew...hvalidator.html

但我不知道如何使用它

如何将值分配给动态模型?
它来自一个连接点,我知道如何从数据库中获取它们,但不知道如何分配它们

$dynamicModel = \yii\base\DynamicModel::validateData(['brands'], [
    [['brands'], 'required'],
    ['brands', 'each', 'rule' => ['integer']],
]); 

1 个答案:

答案 0 :(得分:4)

我想这会对你有所帮助:

// controller code:

$dynamicModel = new DynamicModel();
$dynamicModel->defineAttribute('brands', $value = null);

$dynamicModel->addRule(['brands'], 'required']);
$dynamicModel->addRule(['brands', 'each', ['rule' => ['integer']]]);

// load with the submitted post data
$dynamicModel->load(Yii::$app->request->post());

// validation
$dynamicModel->validate();


// view code
<?= $form->field($dynamicModel, 'brands')->checkboxList(['1'=>'brand 1', '2'=>'brand 2']) ?>