0

当我从更新页面上的管理页面转到编辑链接时遇到问题,复选框未显示更新。请指导我。这是我的看法

<?php echo $form->checkBoxList($model, 'partecipants', array('Members'=>'Members','sites'=>'sites','packages'=>'packages',' Report'=>'Report'),array('class'=>'tst')); ?>

这是我的控制器

public function actionUpdate($id)
{

    $model=$this->loadModel($id);

    // Uncomment the following line if AJAX validation is needed
    // $this->performAjaxValidation($model);

    if(isset($_POST['Admin_user_groups']))
    {
        $model->attributes=$_POST['Admin_user_groups'];
        if($model->save())
            $this->redirect(array('view','id'=>$model->group_id));
    }

    $this->render('update',array(
        'model'=>$model,
    ));
}
4

2 回答 2

1

在更新时,您应该将参与者作为数组传递给视图,即

$model->participants = array(1,2,3,4) // 这个数组包含参与者 ID。

欲了解更多结帐此链接

http://www.yiiframework.com/forum/index.php/topic/41616-checkboxlist-checked-on-update-time/

于 2013-04-30T12:30:34.813 回答
0

如果您在 DB 字段中保存带有逗号的复选框,那么您需要使用implode从数组中创建字符串:

if(isset($_POST['Admin_user_groups']))
{
    $model->attributes=implode(',',$_POST['Admin_user_groups']);
    if($model->save())
        $this->redirect(array('view','id'=>$model->group_id));
}
于 2013-04-30T12:35:06.007 回答