Я новичок в laravel и настраиваю авторизацию панели администратора в своем первом приложении. Способ установки файлов в настоящее время:
controllers/
admin/
dashboard.php
settings.php
non-admin-controller1.php
non-admin-controller1.php
views/
admin/
dashboard.blade.php
login.blade.php
template.blade.php
non-admin-view1.php
non-admin-view1.php
non-admin-view1.php
... и это мои маршруты
Route::get('admin/login', function()
{
return View::make('admin.login');
});
Route::get('admin/logout', function()
{
return Auth::logout();
return Redirect::to('admin/login');
});
Route::post('admin/login', function()
{
$userdata = array('username' => Input::get('username'),
'password' => Input::get('password'));
if (Auth::attempt($userdata))
{
return Redirect::to('admin');
}
else
{
return Redirect::to('admin/login')->with('login_errors',true);
}
});
Route::controller('admin.dashboard');
Route::get('admin', array('before' => 'auth', function() {
return Redirect::to_action('[email protected]');
}));
Route::filter('auth', function()
{
if (Auth::guest()) return Redirect::to('admin/login');
});
Когда я перехожу в /admin, я перенаправляюсь в admin/login и прошу войти в систему, что именно так мне нужно для работы. При входе в систему я перенаправляется на admin/dashboard, и все выглядит хорошо там. Однако у меня есть 2 проблемы.
-
Когда я иду в admin/logout, я выхожу из системы, но приветствую пустую страницу (она не перенаправляется на admin/login)
-
При выходе из системы, если я иду на admin/dashboard, меня приветствует ошибка
Просмотр рендеринга ошибок: [admin.dashboard]
Попытка получить свойство не-объекта
Что я здесь делаю неправильно? Что я делаю правильно? Будет ли смысл создавать отдельный пул для администратора? Спасибо!