2014-09-04 94 views
1

我是yii框架的新手。yii多个复选框作为未保存在数据库中的数组

  <div class="col-md-5"> 
      <input id="ytAdd_Employee_varHobbies" type="hidden" value="" name="Add_Employee[varHobbies]"> 
      <span id="Add_Employee_varHobbies"> 
      <input id="Add_Employee_varHobbies_0" value="5" type="checkbox" name="Add_Employee[varHobbies][]"> 
      <label for="Add_Employee_varHobbies_0">BaseBall</label> 
      <br> 
      <input id="Add_Employee_varHobbies_1" value="2" type="checkbox" name="Add_Employee[varHobbies][]"> 
      <label for="Add_Employee_varHobbies_1">Football</label> 
      <br> 
      <input id="Add_Employee_varHobbies_2" value="4" type="checkbox" name="Add_Employee[varHobbies][]"> 
      <label for="Add_Employee_varHobbies_2">Hockey</label> 
      <br></div> 

在这里,我有多个checboxes作为数组中的Add_Employee[varHobbies][]

名称在控制器我救的形式

$model->attributes=$_POST['Add_Employee']; 
     //print_r($model);exit; 
     $image_upload=$model->Image = CUploadedFile::getInstance($model,'Image'); 

     if($model->validate() && $model->save()) 
     { } 

通过使用$model->save()我所有的成员被正确保存,但这个检查盒保存为数组。

在我的模型我设置的规则为

array('varHobbies', 'type', 'type' => 'array', 'allowEmpty' => false), 

我要保存的爱好为1,2,3等....

但它另存为“数组” 。

如何解决这一问题?

请帮我

回答

1

添加到您的模型爱好保存为一个字符串:

protected function beforeSave() { 
    parent::beforeSave(); 
    $this->varHobbies = implode(',', $this->varHobbies); 
    return $this; 
} 
+0

它的工作 非常感谢............ – 2014-09-04 12:26:28

相关问题