【发布时间】:2018-10-25 11:47:16
【问题描述】:
我正在使用 spatie 为用户角色分配和授予权限。
我需要更新model_has_roles 表中的role_id 列。
我尝试使用 eloquent,但不幸的是,在 spatie 迁移下创建的表没有模型。
现在我正在使用下面的函数来更新:
$user_role = DB::table('model_has_roles')
->where('model_id', '=', $request->userid)
->select('model_has_roles.*')
->get();
$user_role->role_id = $request->userid;
$user_role->save();
但这是说"Method save does not exist"
关于如何更新数据库列的任何建议?
【问题讨论】:
-
DB::table()->get() 返回 stdClass 对象,它们没有方法。您是否阅读过这里的文档:github.com/spatie/…?
-
那我怎么写更新查询呢?
-
编写更新查询...如果您不使用 Eloquent 模型,您将无法访问 ORM 方法。可能希望确保您通读 Laravel 文档和 spatie 权限文档,以便您更了解自己在做什么。