我阅读了这个问题的类似主题,但我没有找到解决方案。我有一个通过 ajax 加载的表单。当所有数据都有效时,它们不会保存在数据库中并向我显示控制台中的验证错误。在我的用户模型中我 ** set return parent::beforeSave(); in beforeSave method
** 这是我的操作:
public function actionRegister()
{
$model = new RegistrationForm;
if(isset($_POST['ajax']) && $_POST['ajax']==='register-form')
{
$this->ajaxValidate($model);
}
if(isset($_POST['RegistrationForm']))
{
if($model->validate())
{
$model->attributes = $_POST['RegistrationForm'];
$user = new User;
$user->attributes = $model->attributes;
if($user->save())
echo 1;
}else{
$errors = $model->getErrors();
var_dump($errors);
exit;
}
}
$this->renderPartial('register', array('model' => $model),false,true);
public function ajaxValidate($model)
{
echo CActiveForm::validate($model);
Yii::app()->end();
}