保存前在模型中设置当前用户的user_id

时间:2019-11-22 09:03:24

标签: php laravel backpack-for-laravel laravel-backpack

编辑:不幸的是,由于3.6和4.0升级带来的其他麻烦,我不得不停止使用背包。 (对我而言)主要更改实在难以应对。

我正在尝试使用Upgrade Guide从背包3.6更新到背包4.0。

在更新之前,我在FolderCrudController中使用以下代码在保存模型之前根据当前登录的用户设置文件夹的user_id(外键):

public function store(StoreRequest $request)
{             
    // your additional operations before save here
    $request->request->set('user_id',backpack_user()->id); //set user id to currently logged user


    $redirect_location = $this->traitStore();
    // your additional operations after save here

    ....
}

这现在不再起作用,在保存模型的查询中未插入user_id:

  

SQLSTATE [23000]:违反完整性约束:1452无法添加或   更新子行:外键约束失败

在重大更新后如何保存之前如何设置模型的user_id

此外,我对文档中的这一部分感到有些困惑:

  

步骤7。store()和update()方法先前存储了所有输入   表格,特殊输入(如_token,_method,current_tab)除外   等等。)。现在,此过程已更改:他们现在仅存储   字段定义的输入。

这是什么意思?我现在是否必须以某种方式为user_id添加一个字段?

谢谢您的任何反馈。

0 个答案:

没有答案