小编xCr*_*rZx的帖子

在Yii2中一次保存多个模型

我有两个型号,UsersStudents.我想同时在这些表中插入数据.首先,我将数据保存到Students模型中,然后保存到Users模型中.

现在,如果数据未成功插入到Users模型中,则Students表中已有一个条目.我想要的是只有在两者都可以成功保存数据时才能将数据输入到两个模型中.

现在我的控制器代码看起来像这样:

    public function actionCreate()
        {
            $model = new Students();
            $userModel = new Users();    
if ($model->load(Yii::$app->request->post()) && $userModel->load(Yii::$app->request->post()) && $model->save() && $userModel->save()) 
        {
            return $this->redirect(['view', 'id' => $model->id]);
        } else {
            return $this->render('create', [
                'model' => $model,
                'userModel' => $userModel,
            ]);
        }
    }
Run Code Online (Sandbox Code Playgroud)

用户模型中存在错误,并且在我呼叫时不返回true $userModel->save().在这里,$userModel->save()返回true并将数据插入表中.

没有任何复杂情况,还有其他选择吗?

php transactions yii2

4
推荐指数
1
解决办法
6554
查看次数

如何在事件处理程序中获取 javascript 事件对象?

我有一个带有 onclick 参数的 div:

<div onclick="some_function()"></div>
Run Code Online (Sandbox Code Playgroud)

如何访问函数内的事件对象?我需要它来获取 event.target

function some_function() 
{
event = event || window.event;
var target = event.target || event.srcElement;
//does not work in IE and Firefox, but works in chrome
}
Run Code Online (Sandbox Code Playgroud)

javascript event-handling

3
推荐指数
1
解决办法
2万
查看次数

标签 统计

event-handling ×1

javascript ×1

php ×1

transactions ×1

yii2 ×1