Php Laravel 5.4-注册后禁用自动登录
在Php Laravel 5.4-注册后禁用自动登录,php,laravel,laravel-5.4,Php,Laravel,Laravel 5.4,在laravel5.4应用程序中注册用户后,我需要禁用自动登录。5.2和5.3版本有足够的源[],但很难找到5.4版本的解决方案 在Laravel 5.4中没有AuthController,因为它分为LoginController和RegisterController。请指导我在laravel 5.4中禁用自动登录。您可以将注册表控制器中的$redirectTourl更改为您的url。 或者您可以覆盖RegisterController中registerUserstrait的registerUs
laravel
5.4应用程序中注册用户后,我需要禁用自动登录。5.2和5.3版本有足够的源[],但很难找到5.4版本的解决方案
在Laravel 5.4中没有
AuthController
,因为它分为LoginController
和RegisterController
。请指导我在laravel 5.4中禁用自动登录。您可以将注册表控制器中的$redirectTo
url
更改为您的url。
或者您可以覆盖RegisterController
中registerUsers
trait的registerUsers
方法,因为您的RegisterController
使用registerUsers
trait,所有trait方法都可用于RegisterController
。为了防止用户成功注册后登录,您需要覆盖的方法是register()
。以下是该方法的初始主体:
public function register(Request $request)
{
$this->validator($request->all())->validate();
event(new Registered($user = $this->create($request->all())));
$this->guard()->login($user);
return $this->registered($request, $user)
?: redirect($this->redirectPath());
}
行:$this->guard()->login($user)代码>是用户登录的地方。您可以删除它或修改它以满足您的需要。如果您使用默认注册路由,您可以这样做
在RegistersUsers.php
文件中
在register
函数中注释此行
$this->guard()->login($user);
我希望这对你有帮助 拉威尔6号怎么样?
我试着做同样的事情。然而,我不认为,重写/vendor/。。。文件夹是很好的练习。
我试图覆盖函数“registered”,但当我在App/http/Controller/Auth/RegisterController.php中定义一个受保护的函数registered(…){…}时,我收到一个错误
Argument 1 passed to App\Http\Controllers\Auth\RegisterController::registered() must be an instance of App\Http\Controllers\Auth\Request, instance of Illuminate\Http\Request given, called in C:\wamp\www\presbyteria\vendor\laravel\framework\src\Illuminate\Foundation\Auth\RegistersUsers.php on line 35
我添加了Auth::logout()新版本中防护装置旁边的代码>
public function register(Request $request)
{
$this->validator($request->all())->validate();
event(new Registered($user = $this->create($request->all())));
\Auth::logout();
return $this->registered($request, $user)
?: redirect($this->redirectPath());
}
好问题+1@ivanka寄存器方法底部的registered方法是什么我很好奇,因为它使用了三元运算符,我想知道它是怎么回事,我能用redirect()->back()->with('info','something')来改变它吗;在RegisterController中,还包括使用light\Http\Request代码>和使用'light\Auth\Events\registed
redirectTo也将转到logged页面此答案建议编辑vendor/
目录中的文件,这是绝对不应该做的!相反,您应该在AuthController
(或等效工具)中定义register()
方法,并进行相应更改。参考公认的答案。是的。正如Ivanka Todorova所说,编辑框架的核心文件是不可取的。我在这里使用了一种方法: