Перенаправление аутентификации не работает. Префикс не показывает

Все работает нормально, кроме случаев, когда я пытаюсь открыть ссылку, требующую аутентификации, я получаю неправильный маршрут.

Route::group(array('prefix' => 'admin'), function(){
Route::get('login', array('as' => 'admin.login', 'uses' => 'AdminAuthController@getLogin'));
Route::post('login', array('as' => 'admin.login.post', 'uses' => 'AdminAuthController@postLogin'));
Route::get('logout', array('as' => 'admin.logout', 'uses' => 'AdminAuthController@getLogout'));
});

Route::group(array('prefix' => 'admin', 'before' => 'auth'), function(){
Route::get('dashboard', array('as' => 'admin.dashboard', 'uses' => 'AdminWorksController@dashboard'));
Route::get('/', array('as' => 'admin.dashboard', 'uses' => 'AdminWorksController@dashboard'));
Route::resource('works', 'AdminWorksController', array('except' => array('show')));
});

Поэтому, когда я делаю HTML::linkRoute('admin.login') ссылка на выход в порядке, но когда я пытаюсь открыть маршрут в группе с фильтром 'before'=>'auth' без входа в систему перенаправляет на /login вместо /admin/login,

Кроме того, все отлично работает. С помощью команды php artisan routes тоже хорошо выглядит.

Что я делаю неправильно? Как я могу исправить это ошибочное перенаправление аутентификации?

0

Решение

Измени свой auth фильтровать app/filters.php к этому:

Route::filter('auth', function()
{
if (Auth::guest())
{
if (Request::ajax())
{
return Response::make('Unauthorized', 401);
}
return Redirect::guest(route('admin.login'));
}
});
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]