加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

在Laravel中,在会话中传递不同类型的flash消息的最佳方式

发布时间:2020-12-15 19:51:03 所属栏目:百科 来源:网络整理
导读:我在Laravel做我的第一个应用程序,我试图让我的头围绕会话闪光灯消息。据我所知,在我的控制器动作,我可以设置一个闪光灯消息或者通过走 Redirect::to('users/login')-with('message','Thanks for registering!'); //is this actually OK? 对于重定向到另
我在Laravel做我的第一个应用程序,我试图让我的头围绕会话闪光灯消息。据我所知,在我的控制器动作,我可以设置一个闪光灯消息或者通过走

Redirect::to('users/login')->with('message','Thanks for registering!'); //is this actually OK?

对于重定向到另一个路由的情况,或

Session::flash('message','This is a message!');

在我的主刀片模板中,我会有:

@if(Session::has('message'))
<p class="alert alert-info">{{ Session::get('message') }}</p>
@endif

正如你可能已经注意到我在我的应用程序中使用Bootstrap 3,并希望使用不同的消息类:alert-info,alert-warning,alert-danger等。

假设在我的控制器中我知道我设置什么类型的消息,什么是最好的方式传递和显示在视图中?我应该在每个类型的会话中设置一个单独的消息(例如Session :: flash(‘message_danger’,’这是一个讨厌的消息!出错了。然后,我需要一个单独的if语句为我的刀片模板中的每个消息。

任何建议赞赏。

解决方法

一个解决方案是将两个变量闪存到会话中:

>消息本身
>警报的“类”

例如:

Session::flash('message','This is a message!'); 
Session::flash('alert-class','alert-danger');

然后在您的视图:

@if(Session::has('message'))
<p class="alert {{ Session::get('alert-class','alert-info') }}">{{ Session::get('message') }}</p>
@endif

注意我把一个default value到Session :: get()。这样你只需要覆盖它,如果警告应该是除了alert-info类。

(这是一个快速示例,未经测试:))

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读