将select2中的复选框添加到yii2中的下拉列表中

问题描述 投票:0回答:1

这里是dropdownlist的代码..但是当我选择多个值时,它会给出验证错误“task must be string”

如何保存多个值(数组)?

   <?php echo $form->field($model, 'task')->widget(Select2::classname(), [
                            'data' => $companiesList,
                            'options' => ['placeholder' => 'Select company...','multiple' => true],
                            'pluginOptions' => ['allowClear' => true,],
                        ]);?>

如何为列表中的每个值提供复选框?

yii2 jquery-select2
1个回答
0
投票

你必须在多对多表中保存多个值,

从Skull先生的答案改变规则到[['task'], 'safe']后,你必须得到这样的所有数据:

foreach ( $model->task as $single_task){

$task = new _many_to_many_model();
$task->side_1_id = single_task;
$task->side_2_id = $model->id;
$task->save();

}

在此评论之后:

所有选定的值应该在单列中

你不需要使用多对多!我使用“ - ”作为分隔符,

$all_taskes = "";
    foreach ( $model->task as $single_task){

    $all_taskes .= single_task."-";

    }

$model->task = all_taskes;
© www.soinside.com 2019 - 2024. All rights reserved.