如何将哨兵 2 用户模型注入控制器 - Laravel 4


how to Inject a Sentry 2 User Model into a controller - laravel 4

如何使用 IoC 将 Sentry 2 用户模型注入 laravel 4 控制器?

例如,我想要以下内容

class myController extends BaseController {
    /**
     * creates a list of MyModel Models
     *
     * @return View
     */
    public function getIndex( User $user )
    {
        // fetch models
        $models = MyModel::all();
        // Show the page
        return View::make('my-views.the-view', compact('models', 'user'));
    }
}

这就是我喜欢的做法:

class myController extends BaseController {
    $protected $user
    /**
     * creates a list of MyModel Models
     *
     * @return View
     */
    function __construct(User $user){
        parent::__construct();
        $this->user = $user;
    }
    public function getIndex()
    {
        // fetch models
        $models = MyModel::all();
        // Show the page
        return View::make('my-views.the-view', compact('models', 'user'));
    }
}

您也可以在该方法中执行此操作,但是...好吧,也好好读一读:http://fabien.potencier.org/article/11/what-is-dependency-injection