【发布时间】:2017-11-29 00:53:24
【问题描述】:
我有一个 yii2 表单,其中包含一个复选框列表项,我是这样制作的:
<?php $CheckList = ["users" => 'Users', "attendance" => 'Attendance', "leave" => 'Leave', "payroll" => 'Payroll'];?>
<?= $form->field($model, 'MenuID')->checkboxList($CheckList,['separator'=>'<br/>']) ?>
现在我需要将数据库列中的值保存为逗号分隔值。
我尝试用这种方式修改控制器中的创建函数:
public function actionCreate()
{
$model = new Role();
if ($model->load(Yii::$app->request->post())) {
if ($model->MenuID != " ") {
$model->MenuID = implode(",", $model->MenuID);
}
$model->save();
return $this->redirect(['view', 'id' => $model->RoleID]);
} else {
return $this->render('create', [
'model' => $model,
]);
}
}
但是这些值没有保存在数据库中
【问题讨论】:
-
您好,尝试使用 PHP 函数 serialize() 将数组转换为字符串。 $array =implode(",", $model->MenuID); $model->MenuID = 序列化($array)