我是yii的新手。我有这个问题,我在radiobuttonlist或dropDownList中存储的数据没有保存在数据库中。它始终显示为null。这是我的代码
查看:
<?php
$form = $this->beginWidget('CActiveForm');
echo $form->label($model,'gender');
echo $form->radioButtonList($model,'gender',array('M'=>'Male','F'=>'Female'));
echo $form->label($model,'cat');
echo $form->dropDownList($model,'cat',$category);
echo CHtml::submitButton('Submit');
$this->endWidget();
?>
控制器:
public function actionCreate()
{
$model=new Test;
if(isset($_POST['Test']))
{
$model->attributes=$_POST['Test'];
if($model->save()){
$this->redirect(array('index'));
}
else
var_dump($model->errors);
}
$cat = array('st'=>'STAFF','ot'=>'OTHERS');
$model->gender='M';
$this->render('create',array(
'model'=>$model,'category'=>$cat
));
}
请帮助...提前致谢
编辑:在规则部分添加必需后,它就像魅力一样
这里是修改后的测试模型
public function rules()
{
return array(
array('gender,cat', 'required'),
array('name', 'length', 'max'=>45),
);
}
答案 0 :(得分:0)
在这里发布您的模型。我认为您的问题出现在测试模型中。
答案 1 :(得分:0)
我看到您使用'required'
解决了这个问题,但是如果某些字段不是强制性的,则可以使用'safe'
规则。关键是表单的每个属性都必须符合模型的规则。