我不想在注册后登录用户,但会重定向他们的登录页面。到目前为止,我成功覆盖了RegisterController中的Register()。
public function Register(Request $request)
{
$validator = $this->validator($request->all());
if ($validator->fails()) {
$this->throwValidationException(
$request, $validator
);
}
return redirect('/login')->with('message','Successfully Registered');
}
但成功信息没有出现。当我直接回到视图时:
return view('auth.login')->with('message','Successfully registered');
在登录页面中正确显示了消息,但是网址是/register
这意味着在我尝试登录后,它会转到注册表单吗?这样做的实际解决方案是什么?
答案 0 :(得分:1)
将此代码写入此消息必须显示的视图中:
{{ Session::get('message'`) }}
答案 1 :(得分:1)
Flash会话:
$request->session()->flash('message', 'content');
然后检查会话是否存在:
session()->has('message')
如果它确实显示session()->get('message')
答案 2 :(得分:0)
首先在Register函数中进行重定向之前先给出以下信息:
session()->flash('success', 'You have Successfully Registered');
return redirect('/login');
然后将以下语句放入视图中以获取消息:
{{Session::get('success')}}
答案 3 :(得分:0)
在Laravel 5.4中,您可以覆盖RegisterController
中的registered()
方法,以将消息刷新到会话中。
/**
* The user has been registered.
*
* @param \Illuminate\Http\Request $request
* @param mixed $user
* @return mixed
*/
protected function registered(Request $request, $user)
{
$request->session()->flash('notification', 'Thank you for subscribing!');
}
然后,您可以使用session()
帮助器在视图中显示消息。
@if (session()->has('notification'))
<div class="notification">
{!! session('notification') !!}
</div>
@endif