通过Controller的自定义替换方法是什么,因为不推荐使用beforeFilter方法:
public function __construct()
{
$this->beforeFilter('@GetParameter', ['only' => ['show', 'edit', 'update', 'destroy']]);
}
public function GetParameter(Route $route)
{
$this->parameters = Parameter::findOrFail($route->getParameter('parameters'));
}
答案 0 :(得分:3)
关于更换过滤器,您可以使用中间件。
Laravel Docs - Controller Middleware
public function __construct()
{
$this->middelware('yourmiddleware', ['only' => ['show', 'edit', ...]]);
}
<强>更新强>
看到你的代码后,我认为你根本不需要过滤器/中间件。看起来您正在重新创建Route model binding的功能。
示例(使用隐式绑定):
Route::get('user/{user}', 'UserController@show');
// UserController
public function show(User $user)
{
// $user is a User model that was resolved by its primary key
}