重定向到其他路由后如何清除laravel中的会话消息

时间:2020-05-01 17:40:26

标签: laravel

我正在使用会话在laravel中显示消息。我的控制器代码是:

return redirect()->route('abc')->with('success','data save successfully');

对于显示消息,我正在使用以下代码:

@if ($message = Session::get('success'))
    <div class="alert alert-success alert-block">
        <button type="button" class="close" data-dismiss="alert">×</button> 
            <strong>{{ $message }}</strong>
    </div>
@end if

在我重定向到另一条路线之后,再次返回上一页,因此消息再次显示。 如果我使用的是session::forget('success'),则不会显示会话消息。

2 个答案:

答案 0 :(得分:0)

按返回按钮时,浏览器将显示该页面的缓存版本。在这种情况下,您需要重新加载页面。

如果用户按下后退按钮,请使用以下脚本强制重新加载页面。

if(performance.navigation.type == 2){
    location.reload();
}

注意:无需清除会话。

答案 1 :(得分:0)

尝试在刀片中使用Session::pull('success')Session::has('success')而不是get()

您可以查看有关会话Here

的更多信息