我想将路由定义中的静态值(变量或静态字符串)传递给控制器。 例如,如果考虑以下路线:
Route::get('/', [
'uses' => '\Controllers\FoController@show',
'as' => 'show'
]);
我想将一个变量(ex,$ var1)传递给它,然后可以访问FoController构造函数或其他控制器方法中的变量,所以我不喜欢该变量的值显示在网址。 我怎样才能做到这一点?感谢...
答案 0 :(得分:0)
使用一个闭包并自己调用控制器并传递你想要的任何东西..
Route::get('/', function(){
$controller = app()->make('FoController');
return $controller->callAction('show', ['foo' => 'bar', 'ping' => 'pong']);
});
答案 1 :(得分:0)
作为@serge答案的后续行动,您也可以这样做,只是发布可能会对某人有用
Route::get('/','fooController@index')
->defaults('id', '3');
答案 2 :(得分:-1)
你可以这样做。
public function createuser($id){
//here you can use $id
}
您可以使用{}运算符作为参数。 在控制器中。
{{1}}