как очистить сеансовые сообщения в laravel после перенаправления на другой маршрут - PullRequest
0 голосов
/ 01 мая 2020

Я использую сеанс для отображения сообщений в 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 голосов
/ 01 мая 2020

Попробуйте использовать Session::pull('success') или Session::has('success') в блейде вместо get()

Вы можете проверить больше о сеансе Здесь

0 голосов
/ 01 мая 2020

Когда вы нажимаете кнопку «Назад», браузер показывает кэшированную версию этой страницы. В этом случае вам необходимо перезагрузить страницу.

Используйте следующий скрипт для принудительной перезагрузки страницы, если пользователь нажмет кнопку назад.

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

Примечание: Нет необходимости очистить сеанс.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...