【问题标题】:how to fix Undefined variable: users in laravel view如何修复未定义的变量:laravel 视图中的用户
【发布时间】:2019-11-23 09:04:49
【问题描述】:

我正在使用这个包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 已定义并且我将所有用户都放在我的索引中。

知道如何解决这个问题吗?

【问题讨论】:

    标签: php laravel laravel-5 php-7


    【解决方案1】:

    事实证明,我正在返回一个期望 $users 的视图,而不是重定向到用户索引。

    更改自:

         return view('admin.users.index')->with('success','User is deleted');
    

    到:

    
    return redirect()->route('users.index')->with('success','User is deleted');
    
    

    修复了整个该死的问题

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-07-01
      • 2017-03-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-21
      • 1970-01-01
      相关资源
      最近更新 更多