laravel build in auth指定要使用的视图

时间:2015-12-16 18:52:06

标签: php laravel

有没有办法在laravel中指定用于内置身份验证的视图?它目前使用views / auth / login.blade.php但我希望例如使用views / admin / auth作为admin部分,然后使用另一个视图作为前端

2 个答案:

答案 0 :(得分:0)

只需将要修改的功能复制粘贴到Auth\AuthController并覆盖。

答案 1 :(得分:0)

当使用AuthenticatesUsers特性时,你的控制器会有getLogin,postLogin和getLogout方法,我认为这些是你在路由上引用的方法,如下所示:

Route::get('auth/login', 'Auth\AuthController@getLogin');
Route::post('auth/login', 'Auth\AuthController@postLogin');
Route::get('auth/logout', 'Auth\AuthController@getLogout');

如果您查看AuthenticatesUsers,它唯一要做的就是检查是否存在视图auth.authenticate如果不存在则返回auth.login

您可以覆盖此方法或使用要返回的视图创建新方法并更改路径

class AuthController extends Controller
{
  public function newLogin()
  {
    return view('admin.auth');
  }
}

将路线改为

Route::get('auth/login', 'Auth\AuthController@newLogin');

您将来可能需要的另一件事是更改默认登录路径并在注销路径后重定向,这可以通过在控制器中将两个属性定义为受保护来完成:

protected $redirectAfterLogout = '/where/to/redirect/after/login';
protected $loginPath = '/another/login/path';