Laravel 5: 覆盖注册页面的默认视图
Laravel 5: override the default view for Registration page
我想更改身份验证过程以使用另一个视图模板。例如。应该使用 resources/views/register.blade.php
而不是 resources/views/auth/register.blade.php
。
但我很难找到调用此视图的代码。
我找到的唯一地方是 app/Services/Register
,但前提是验证器失败了。我需要默认调用视图时的位置。
我认为您正在寻找文件 Illuminate\Foundation\Auth\AuthenticatesAndRegistersUsers.php
中被 \App\Http\Controllers\Auth.php
中的 class
AuthController
使用的 trait
AuthenticatesAndRegistersUsers
。具体来说,您的示例的寄存器视图在函数 getRegister
中被调用
在 AuthController 中,您可以像这样覆盖方法 getRegister()
方法:
public function getRegister()
{
return view('register');
}
Put this code in your AuthController.
在 class AuthController 中放置这个:
protected $registerView = 'directory.auth.register';
Laravel 5.6- I am extending Amarnasan's answer
Laravel 5.6中没有AuthController.php
。取而代之的是,有 4 个不同的控制器。
LoginController.php
RegisterController.php
ForgotPasswordController.php
ResetPasswordController.php
要覆盖任何 Auth 控制器的视图,只需查找 Auth 控制器正在使用的特征。然后,转到该特征文件并检查哪个方法返回 Auth 控制器的默认视图。
更改登录的默认视图
在LoginController.php
中添加以下内容
public function showLoginForm() {
return view('auth.m-login');
}
更改注册的默认视图
在RegisterController.php
中添加以下内容
public function showRegistrationForm() {
return view('auth.m-register');
}
更改忘记密码的默认视图
在ForgotPasswordController.php
中添加以下内容
public function showLinkRequestForm(){
return view('auth.passwords.m-email');
}
更改重置密码的默认视图
在ResetPasswordController.php
中添加以下内容
public function showResetForm(Request $request, $token = null){
return view('auth.passwords.m-reset')->with(
['token' => $token, 'email' => $request->email]
);
}
我想更改身份验证过程以使用另一个视图模板。例如。应该使用 resources/views/register.blade.php
而不是 resources/views/auth/register.blade.php
。
但我很难找到调用此视图的代码。
我找到的唯一地方是 app/Services/Register
,但前提是验证器失败了。我需要默认调用视图时的位置。
我认为您正在寻找文件 Illuminate\Foundation\Auth\AuthenticatesAndRegistersUsers.php
中被 \App\Http\Controllers\Auth.php
中的 class
AuthController
使用的 trait
AuthenticatesAndRegistersUsers
。具体来说,您的示例的寄存器视图在函数 getRegister
在 AuthController 中,您可以像这样覆盖方法 getRegister()
方法:
public function getRegister()
{
return view('register');
}
Put this code in your AuthController.
在 class AuthController 中放置这个:
protected $registerView = 'directory.auth.register';
Laravel 5.6- I am extending Amarnasan's answer
Laravel 5.6中没有AuthController.php
。取而代之的是,有 4 个不同的控制器。
LoginController.php
RegisterController.php
ForgotPasswordController.php
ResetPasswordController.php
要覆盖任何 Auth 控制器的视图,只需查找 Auth 控制器正在使用的特征。然后,转到该特征文件并检查哪个方法返回 Auth 控制器的默认视图。
更改登录的默认视图
在LoginController.php
中添加以下内容
public function showLoginForm() {
return view('auth.m-login');
}
更改注册的默认视图
在RegisterController.php
中添加以下内容
public function showRegistrationForm() {
return view('auth.m-register');
}
更改忘记密码的默认视图
在ForgotPasswordController.php
中添加以下内容
public function showLinkRequestForm(){
return view('auth.passwords.m-email');
}
更改重置密码的默认视图
在ResetPasswordController.php
中添加以下内容
public function showResetForm(Request $request, $token = null){
return view('auth.passwords.m-reset')->with(
['token' => $token, 'email' => $request->email]
);
}