2015-08-15 5 views
0

У меня есть следующая настройка Route::group в файле routes.php. Проблема в том, что теперь я хочу добавить новый маршрут Route::post('/timesheets/new', 'Timesheet\[email protected]');, но проблема в том, что контроллер находится в другом каталоге, и поэтому пространство имен в группе вызывает Laravel для поиска контроллера в том же каталоге.Laravel 5.1 Группы маршрутов

Мой путь :: Группа

Route::group(['middleware' => 'admin', 'prefix' => 'admin', 'namespace' => 'Admin'], function() 
{ 
    Route::get('/', '[email protected]'); 
    Route::get('/contractors', '[email protected]'); 

}); 

Я хочу добавить следующее:

Route::get('/timesheets/new', 'Timesheet\[email protected]'); 

Однако, когда я делаю это, я получаю ошибку:

Class App\Http\Controllers\Admin\Timesheet\TimesheetController does not exist 
+0

Должен ли он иметь префикс администратора? – mimo

+0

Да, префикс admin правильный. Однако я хочу, чтобы пользователь-администратор имел доступ к TimesheetController, который находится в контроллерах/расписании – V4n1ll4

+0

. Вам нужно создать другую группу с другим пространством имен и поместить туда маршрут –

ответ

2

Это должно работать:

Route::group(['middleware' => 'admin', 'prefix' => 'admin', ], function() 
{ 
    Route::group(['namespace' => 'Admin'], function() { 
     Route::get('/', '[email protected]'); 
     Route::get('/contractors', '[email protected]'); 
    }); 

    Route::get('/timesheets/new', 'Timesheet\[email protected]'); 
}); 
Смежные вопросы