通过ajax成功登录后,我无法显示我的flash消息。
我试过Session::put()
& Session::forget()
也要修复它。但它没有用。
如何解决?
LoginController
//Overriding
protected function authenticated(Request $request, $user)
{
Session::flash('loginSuccess', 'Welcome Back <b>'.$user->full_name.'</b>!');
return redirect()->route('home');
}
Js
$.ajax({
url: form.action,
type: form.method,
data: $(form).serialize(),
success: function(response){
$('#log-v-error').html('');
window.location.href='/';
},
});
Views
@if(Session::has('loginSuccess'))
<div class="alert alert-warning">{!! Session::get('loginSuccess') !!}</div>
@endif
答案 0 :(得分:0)
闪存仅针对当前响应设置,该响应将转到ajax成功函数。
window.location触发第二个请求,在没有连接闪存的情况下加载。
您应该返回成功值,而不是返回重定向,然后您的成功函数可以在启动重定向之前显示消息片段。