【问题标题】:Laravel: How to pass parameters in controllerLaravel:如何在控制器中传递参数
【发布时间】:2017-12-20 14:45:10
【问题描述】:

我想在我尝试以下方法的所有模型中使用一种方法,但它不起作用,请你们帮我解决这个问题。

我在用户模型中创建了以下方法测试:

public function testing($user)
{
    $arr = [];

    foreach ($user as $users) {

        if ($users->RolePermission->isEmpty())
        {
            return view('authorize');
        }
        else
        {
            foreach($users->RolePermission as $permission)
            {
               return $arr[] = $permission->permission_id;
            }
        }

    }
}

我想在 HomeController 中使用上述方法,但我不知道它是如何工作的: 我在 HomeController 中尝试过。 例如:

public function checkRights()
{
    $auth = Auth::user();
    $id = $auth->id;
    $user = User::Where('id', $id)->with('RolePermission')->get();

 //now here i want to use the method named testing

    $user = User::::with('testing('.$user.')');

   return view('authorization',compact('user'));
}

我尝试在上面的代码中使用测试功能,但它不起作用。

【问题讨论】:

    标签: laravel function methods model controller


    【解决方案1】:

    将方法testing声明为静态:

    public static function testing($user)
    

    然后这样称呼它:

    $user = User::testing($user);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-11-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-04
      • 2020-11-30
      • 2015-02-25
      • 1970-01-01
      相关资源
      最近更新 更多