Laravel 5:在Controller的构造函数中获取route参数

时间:2015-06-13 06:25:11

标签: laravel laravel-5

我用这种方式为控制器定义了路径:

/model/{id}/view
/model/something/{id}/edit

我需要在此控制器的构造函数中获取id参数。例如:

class ArtController extends Controller {

  public function __construct(Request $request){
    //dd($this->route('id'));  //Doesn't work
    //dd($request->segments()[1]); //this works for the first route but not the second
  }
}

如何在Laravel中的Controller的构造函数中获取参数id

4 个答案:

答案 0 :(得分:8)

你应该可以做这样的事情

var myApp = angular.module('myApp', []);

myApp.controller('count', function($scope) {
    $scope.animate = function () {
        $scope.done = function () { //call after 1s..?
            console.log('done');
        }
        $('h2').fadeOut("slow","linear", $scope.done)
    }
});

<强>更新

从laravel 5.4 $id = Route::current()->getParameter('id'); 开始,已重命名为getParameter

parameter

答案 1 :(得分:7)

public function __construct(Request $request)
{
    $id = $request->route('id');   

    dump($id);
}

答案 2 :(得分:0)

不使用细分 使用段

public function __construct(Request $request){
dd($request->segment(1));}

答案 3 :(得分:0)

您可以在任何地方打电话:

request()->route('id');

无需注射