Laravel 5.7会话刷新消息已多次显示,尽管应该只出现一次

时间:2019-03-02 22:31:12

标签: php laravel

遇到了一个问题)据我所知,Session :: flash(...)应该只记录在一个会话中的一次演出中,但是对于我来说,它并不会消失,当我更新页面时,我总是它。

这是示例代码:

public function update(Request $request){
    $this->validate($request, [
        'amount' => 'required|integer'
    ]);

    $user = Auth::user();
    $user->balance += $request->amount;
    $user->save();

    Session::flash('success', "Balance updated");

    return redirect('/balance');
}

消息显示如下

@if(Session::has('success'))
   <div class="alert alert-success alert-dismissable">
      {{ Session::get('success') }}
   </div>
@endif

@if(Session::has('error'))
   <div class="alert alert-danger alert-dismissable">
      {{ Session::get('error') }}
   </div>
@endif

请帮助,我无法理解问题所在。我将非常感谢。

1 个答案:

答案 0 :(得分:0)

尝试一下,希望对您有帮助

public function update(Request $request){
    $this->validate($request, [
        'amount' => 'required|integer'
    ]);

    $user = Auth::user();
    $user->balance += $request->amount;
    $user->save();

    return redirect('/balance')->with('success', 'Balance updated');
}


@if (session('success'))
    <div class="alert alert-success">
        {{ session('success') }}
    </div>
@endif

有关更多信息,请检查文档:

https://laravel.com/docs/5.7/redirects#redirecting-with-flashed-session-datahttps://laravel.com/docs/5.7/session#flash-data