Laravelコントローラーはセッション変数を返せません
P粉998100648
2023-08-13 20:34:28
<p>Laravel を学習していて、成功メッセージをセッションに入れてビューに表示しようとしていますが、機能しないようです</p>
<p>これはビュー セクションのコードです</p>
<pre class="brush:php;toolbar:false;"><div class="col-sm-12col-xl-12">
@if (session()->has('msg'))
<h5> {{ session('msg') }}</h5>
@endif</pre>
<p>これは、新しいコンテンツを追加し、セッションにメッセージを入れるために使用するコントローラ関数です</p>
<pre class="brush:php;toolbar:false;">パブリック関数ストア(CatalogRequest $request)
{
$status=$this->catalog->insert([
'name' => $request->name,
'ステータス' => $request->ステータス
]);
if($ステータス){
$msg = "ディレクトリが正常に追加されました";
$color = '成功';
}それ以外{
$msg = "ディレクトリの追加に失敗しました";
$color = '赤';
}
session()->put('msg',$msg);
リダイレクトを返します('カタログ');
}</pre></p>
###これを試して### リーリー
ブレードテンプレート内
リーリーこのコードでは、正しいインポートを含め、データ挿入に正しいメソッドを使用し、メッセージをセッションに一時的に保存するために put() メソッドの代わりに flash() メソッドを使用するようにしました。さらに、スタイルをより適切に制御できるように、メッセージの色もセッションに保存されます。
あるいは、
WITHメソッドを使用してバインドしてみることもできます。
redirect()リーリー
redirect()->route()
およびその他のメソッドを使用できます。 また、docs
を注意深く読んでください。そこから多くのアイデアが得られます。