2016-02-09 105 views
0

我使用Laravel的途徑團體,試圖和我的路由文件內停止重複。Laravel 5路組前綴`和`as`和資源控制器

我有一個主要羣體,frontend。這有namespaceFrontendasfrontend.

嵌套在該組內,是另一個組。此基團具有prefixaccount其中追加/account/給每個路由。它也有asaccount.

嵌套組內的路線,我期望的是:

  1. frontend.account.home
  2. frontend.account.order.show
  3. frontend.account.order.index

相反,我得到:

  1. frontend.account.home
  2. frontend.account.account.order.index
  3. frontend.account.account.order.show

代碼:

Route::group(['as' => 'frontend.', 'namespace' => 'Frontend'], function() { 
    Route::group(['prefix' => 'account', 'as' => 'account.', 'namespace' => 'Account'], function() { 
     Route::get('home', [ 
      'as' => 'home', 
      'uses' => 'Home\[email protected]' 
     ]); 

     Route::resource('order', 'Order\Controller', ['except' => [ 
      'create', 
      'store', 
      'update', 
      'destroy', 
      'edit', 
     ]]); 
    }); 
}); 
+0

嘗試從內部的'Route :: group'中刪除''namespace'=>'Account'',該帳戶的前綴爲 –

+0

但是那樣會停止名稱空間的工作?兩個相互衝突的選項是'prefix'和'as'。 – CharliePrynn

+0

刪除'as'=>'帳號。'從你的Route :: group –

回答

1

因爲你以外幾乎每一個從Route::resource方法,爲什麼不創造index 2單路和show像這樣的路線:

// in your routes file, within your nested group : 
Route::get('order', ['as' => 'order.index', 'uses' => 'Order\[email protected]' ]); 
Route::get('order/{id}', ['as' => 'order.show', 'uses' => 'Order\[email protected]' ]); 
+0

不幸的是訂單路線資源只是一個例子,還有更多的將具有所有的標準路線。 – CharliePrynn