簡體   English   中英

Laravel Route傳遞其他變量

[英]Laravel Route pass additional variables

我有一個用戶控制器返回用戶列表,每個用戶屬於不同的組。

例如: - $ groups = ['student_users'=> 1,'teacher_users'=> 2,.....]

我可以創建如下的路線來訪問它們

Route::get('users/{id}', [
        'as'            =>  'user',
        'uses'          =>  'Admin\UserController@listUser'
    ]);

但我想創建更多用戶友好或seo友好的說法像這樣

Route::get('users/student', [
        'as'            =>  'student',
        'uses'          =>  'Admin\UserController@listUser'
    ]);

Route::get('users/teacher', [
        'as'            =>  'teacher',
        'uses'          =>  'Admin\UserController@listUser'
    ]);
Route::get('users', [
        'as'            =>  'student',
        'uses'          =>  'Admin\UserController@listUser'
    ]);//by default shows students list.

我想通過路由而不是通過url傳遞id。 什么是最好的方法。

做如下

Route::get('users/student', [
    'as'            =>  'student',
    'type'          =>  'student',
    'uses'          =>  'Admin\UserController@listUser'
]);

在控制器中,您可以獲得如下type

public function listUser(\Illuminate\Http\Request $request)

   $action = $request->route()->getAction();
   dd($action['type']); 
}

type只是一個例子。 您可以傳遞任何變量。

我希望它有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM