这是我的代码:
public function actionPostTest()
{
if(isset($_POST['Test']))
{
$model = new Test();
$model->attributes = $_POST['Test'];
if($model->save())
{
$this->redirect('postTest');
}
}
$this->render('posttest', array('model'=>new Test()));
}
这是将表单中的数据保存两次到数据库。
有什么问题?
答案 0 :(得分:4)
尝试禁用ajax验证。
在该视图中将enableAjaxValidation
设置为false
。
实际上POST发生了两次。第一个Ajax验证和第二个表单提交。你可以在firefox中使用httpfox来确认它。
答案 1 :(得分:0)
你可以试试这个
$model = new Test();
if(isset($_POST['Test']))
{
$model->attributes = $_POST['Test'];
if($model->save())
{
unset($_POST['Test']);
$this->redirect('postTest');
}
}