如何只显示一次消息?

时间:2016-12-20 11:24:23

标签: laravel laravel-5.2 laravel-5.3

我有一个带有字段的个人资料表格,用途应填写。

提交按钮后,我会重定向到另一个控制器(页面)。

如何只在那里显示一次消息?我的意思是,如果用户将再次更新个人资料,则消息将不再显示。

3 个答案:

答案 0 :(得分:1)

试试这个,它只会显示一次消息:

if($user_update) {
      if(Session::has('update_profile_message') {
          return redirect()->back(); //or wherever you want to redirect
        } else {
          return redirect()->back()->with('update_profile_message', 'Your profile has been updated successfully.');
        }
    } 

答案 1 :(得分:0)

你的职能:

public function deleteObject($ho_id) {
    return redirect()->back()->with('message', 'My message.'); //return back and set a session key, message
}

您的代码(您要扩展的布局)

@if (Session::has('message'))<!-- check if hash message key in session -->
    <div class="callout callout-info">
       <h4>
        Message
       </h4>
       <p>{{ Session::get('message') }}</p><!-- show the message -->
    </div>              
@endif

希望这有效!

答案 2 :(得分:0)

您只需要使用闪烁的会话数据进行重定向。例如, 在您的路线文件中,您可以拥有:

Route::post('user/profile', function () {
    // Update the user's profile...

    return redirect('dashboard')->with('status', 'Profile updated!');
});

在您的刀片文件中,选中并显示“&#39;消息&#39;存储在会话中

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

有关详细信息,请访问https://laravel.com/docs/5.3/redirects#redirecting-with-flashed-session-data