Laravel:如何在控制器中传递参数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Laravel:如何在控制器中传递参数相关的知识,希望对你有一定的参考价值。

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

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

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'));
}

我尝试使用上面代码的测试功能,但它无法正常工作。

答案

将方法testing声明为static:

public static function testing($user)

然后像这样称呼它:

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

以上是关于Laravel:如何在控制器中传递参数的主要内容,如果未能解决你的问题,请参考以下文章

Laravel - 如何不在控制器中传递未使用的参数

Laravel - 如何将参数从控制器传递到路由并在另一个控制器中使用它?

Laravel 将 url 参数从控制器传递到路由

Laravel 4:如何传递多个可选参数

如何在Laravel 5.2中将表单数据作为路由参数传递

使用 vuejs 和 laravel 在 URL 中传递参数