我正在使用这个包spatie-laravel-permission向我的网站添加角色和权限。在我的管理仪表板中,我获取了所有用户并设置了删除方法。public function user_destroy ($id){ $user_delete= User::findOrFail($id); $user_delete->removeRole($user_delete->getRoleNames()); $user_delete->delete(); return view('admin.users.index')->with('success','User is deleted'); }所以使用上面的代码不会删除用户和他的角色。我收到此错误:Return value of App\User::getStoredRole() must implement interface Spatie\Permission\Contracts\Role, instance of Illuminate\Support\Collection returned我尝试使用 PHP detach() : $user_delete->roles()->detach();它实际上正在工作,但我收到此错误:Undefined variable: users (View: resources\views\admin\users\index.blade.php)PHP $users 在索引视图中定义如下:public function mainUsers(){ $users = User::latest()->paginate(5); return view('admin.users.index',compact('users')); }当我使用PHP detach()$users 被定义并且我在我的索引上获取所有用户时,我不知道有什么问题。我如何解决这个问题的任何想法:?
1 回答
小唯快跑啊
TA贡献1863条经验 获得超2个赞
事实证明,我正在返回一个期望$users而不是重定向到用户索引的视图。
改变自:
return view('admin.users.index')->with('success','User is deleted');
到 :
return redirect()->route('users.index')->with('success','User is deleted');
解决了整个该死的问题
- 1 回答
- 0 关注
- 137 浏览
添加回答
举报
0/150
提交
取消