路由或控制器中的 Laravel过滤器


Laravel filters in route or controllers?

是否有放置过滤器的最佳实践?我想对资源(例如:用户)的每个操作进行过滤,如果我将它们全部放在routes.php中,这可能会看起来不知所措,但大多数人都这样做。如果我在控制器中应用过滤器,我也想对其他所有内容执行此操作,以便其他人始终知道在哪里查找。

你如何组织你的过滤器?

"

最佳实践"可能只是在路线上这样做,仅仅是因为这是大多数人会去寻找它们的地方。

如果您想将过滤器放在多个路由中,那么一个巧妙的方法就是将这些路由放在一个 Route::group .

Route::group(['before' => 'auth.whatifs'], function(){
 Route::get('user', ['uses' => 'UserController@function', 'as' => 'user.function']);
 " Another route "
 " Yet another route "
});

将过滤器放在哪里(路由或控制器中)真的无关紧要。但基本上,如果您将统治您的路线,那将很容易理解。