这是我在RegisterUsers.php中的内容,该文件位于我的供应商文件夹中:
public function register(Request $request)
{
$this->validator($request->all())->validate();
event(new Registered($user = $this->create($request->all())));
//$this->guard()->logout();
return $this->registered($request, $user)
?: redirect($this->redirectPath());
}
在我的RegisterController中,从auth文件夹中,我有以下内容:
protected function create(array $data)
{
Session::flash('status', 'Please verify your email for account activation');
//if $request->role_id == '2' then save the role_id
$user = User::create([
'name' => $data['name'],
'email' => $data['email'],
'password' => Hash::make($data['password']),
'verifytoken' => Str::random(40),
'role_id' => $data['role_id']
]);
$thisUser = User::findOrFail($user->id);
$this->sendEmail($thisUser);
return $user;
}
我使用forge部署了网站,但我只是注意到我的注册与本地主机上的注册工作不同。
当用户注册时,系统会自动将其登录。在localhost上,我已禁用防护功能,但该防护功能位于供应商文件夹中。
由于我无法上载供应商文件夹,因此如何在实时环境中禁用防护功能?
答案 0 :(得分:0)
您可以覆盖注册方法。 Auth\RegisterController:
使用供应商的RegistersUsers;
。
因此您可以简单地创建如下方法:
public function register(Request $request)
{
$this->validator($request->all())->validate();
event(new Registered($user = $this->create($request->all())));
return $this->registered($request, $user)
?: redirect($this->redirectPath());
}