You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel:如何显示传递到视图的消息数据

解决Laravel重定向后消息不显示的问题

嘿,我来帮你搞定这个问题!你现在遇到的情况是因为Laravel里redirect()->with()方法并不是直接把$message变量传递到视图里,而是把这个消息**闪存到Session(会话)**中了,所以你用isset($message)自然找不到这个变量~

下面是几种正确的写法,任选一种都能解决问题:

方法一:使用session辅助函数

这是最常用也最简洁的方式:

@if(session('message'))
    <div class="alert alert-success">
        <ul>
            <li>{{ session('message') }}</li>
        </ul>
    </div>
@endif

方法二:使用Laravel的@session指令(Laravel 5.8及以上版本支持)

这种写法更优雅,自动处理存在性判断:

@session('message')
    <div class="alert alert-success">
        <ul>
            <li>{{ $value }}</li>
        </ul>
    </div>
@endsession

方法三:使用Session门面

如果你习惯用门面的方式,也可以这样写:

@if(\Illuminate\Support\Facades\Session::has('message'))
    <div class="alert alert-success">
        <ul>
            <li>{{ \Illuminate\Support\Facades\Session::get('message') }}</li>
        </ul>
    </div>
@endif

另外还要注意一个细节:确保你的路由是在web路由组下,因为web路由组默认包含了处理Session的中间件(比如StartSession和ShareErrorsFromSession),如果你的路由不在这个组里,Session功能会失效,消息也存不进去哦~

内容的提问来源于stack exchange,提问作者rushtoni88

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 04:34:02