Laravel控制器無法傳回會話變數
P粉998100648
2023-08-13 20:34:28
<p>我正在學習Laravel,我試圖將成功訊息放入會話中,並在視圖中顯示,但似乎沒有起作用</p>
<p>這是我在視圖部分的程式碼</p>
<pre class="brush:php;toolbar:false;"><div class="col-sm-12 col-xl-12">
@if (session()->has('msg'))
<h5> {{ session('msg') }}</h5>
@endif</pre>
<p>這是我用來新增內容並將訊息放入會話中的控制器函數</p>
<pre class="brush:php;toolbar:false;">public function store(CatalogRequest $request)
{
$status=$this->catalog->insert([
'name' => $request->name,
'status' => $request->status
]);
if($status){
$msg = "新增目錄成功";
$color = 'success';
}else{
$msg = "新增目錄失敗";
$color = 'red';
}
session()->put('msg',$msg);
return redirect('catalog');
}</pre></p>
嘗試這個
在blade模板中
在這段程式碼中,我確保包含了正確的導入,使用了正確的方法進行資料插入,並使用了flash()方法而不是put()方法將訊息暫時儲存在會話中。此外,訊息的顏色也儲存在會話中,以便更好地控制樣式。
另外,你可以嘗試使用
WITH
方法來綁定它。你可以使用
redirect()
redirect()->route()
等方法。 此外,請仔細閱讀文件,你將從中獲得很多想法。