2017-04-23 1 views
0

Guys 私はlaravel5.2.45を使用しています。フラッシュデータをroutes.phpにするためにredirect()->with()を使用すると、キャッシュデータを出力できません。ここに私のコードです。は、laravel 5.2.45でredirect() - > with()を使用するとフラッシュデータを出力できません

んmattter私は何をすべきか

<div class="container"> 
     @if(session()->has('ok')) 
     <?php echo session('ok'); ?> // always null 
     @endif 
    </div> 

index.blade.php

Route::get('hello', function(){ 
     return redirect('/')->with('ok',"success"); 
    }); 

App/Http/routes.phpでは、セッションデータを印刷することはできません。私は `Session :: get( 'ok') 'を使用しようとしましたが、まだnullでした。

composer updatecompose dump-autoloadでアプリケーションを更新しましたが、それでも動作しません。

誰でも手助けできますか?

+0

あなたはルートに 'web'は次のミドルウェアを適用しましたか? –

+0

セッションのドライバは何ですか? –

答えて

0

これは、私はあなたが示唆するものである。..テストのためのルートのカップルを作成することから始め..

Route::get('/test', function() { 
    return redirect('/test2')->with('ok', 'Working'); 
} 

Route::get('/test2', function() { 
    return session('ok'); 
} 

これが動作する場合、あなたのセッションが正常に動作しています。そうでない場合は、1つのWebミドルウェア(ゼロではなく2つではない)があることを確認してください。あなたはそれを行うことができますphp artisan route:list

別の可能性は、複数のリダイレクトが原因で発生していることです。この場合は、最初のリダイレクト後にreflashと入力してください。

あなたは、ドキュメントでより多くの情報を見つけることができます:https://laravel.com/docs/5.2/session#flash-data

+0

ありがとうございます。私はこの問題を抱いています。なぜなら私は 'web'ミドルウェアを使ったからです。私は 'web'ミドルウェアを削除した後にうまくいきます – Sawyer

関連する問題