【问题标题】:Can the same Laravel route be part of more than one group?同一条 Laravel 路线可以属于多个组吗?
【发布时间】:2018-11-23 07:59:40
【问题描述】:

我在 Laravel 4.2 中遇到了一些相当奇怪的行为。我有一堆基于权限的路由组,例如

Route::group( [ "before" => "filter_can_access_site"] , function() { ...
Route::group( [ "before" => "filter_can_edit"] , function() { ...

在某些情况下,我想在两个组中放置相同的路线,例如显示数据的“获取”请求。

我发现当我使用稍微不同的语法来做同样的事情时,这很有效,例如

Route::group( [ "before" => "filter_can_access_site"] , function() {
    Route::get( "scripts/{id}", "ScriptsController@show" ); 
    ...
Route::group( [ "before" => "filter_can_edit"] , function() { ...
    Route::resource( "scripts", "ScriptsController", array("only" => array( "show" )));

但如果我在两组中使用相同的语法,第一组中的路由将无法通过过滤器。

对此有解释吗?我应该避免将相同的路线放在多个组中吗?我可以做到……但是为什么还要存在这种奇怪的语法解决方法呢?

【问题讨论】:

    标签: laravel filter laravel-4 permissions routes


    【解决方案1】:

    您可以这样嵌套组:

    Route::group(['prefix' => 'admin', 'middleware' => 'auth'], function() {
        // Your routes
    
        Route::group(['prefix' => 'commissions'], function()
    
            // Get request would go here.
    
        }); 
    });
    

    【讨论】:

      猜你喜欢
      • 2014-04-21
      • 1970-01-01
      • 2015-12-10
      • 1970-01-01
      • 1970-01-01
      • 2021-10-16
      • 2015-02-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多