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()
等方法。 此外,请仔细阅读文档,你将从中获得很多想法。