2015-05-09 48 views
0

我正在尝试将登录用户的名称写入我的视图。当我第一次登录时没关系,但如果刷新页面或点击另一个链接,会话数据就会消失。我怎样才能解决这个问题 ?在Laravel 5中刷新后无法看到会话数据

@if(Session::get('username')) 
    Welcome 
    <span> 
     <a href="#"> 
     {!! Session::get('username'); !!}  
     </a> 
    </span> 
@else 
    Welcome 
    <span> 
     <a href="#"> 
     Please Log in  
     </a> 
    </span> 
@endif 
+0

也许不抑制错误和警告,并看看错误日志有帮助吗? – Jost

+0

@Jost谁说我压制他们? – Tartar

+2

假设您使用的是'文件'会话驱动程序,那么您的存储/框架/会话文件夹是否可写?如果是这样,那么在将东西放入会话中之后应该有一些文件。另外,如果您使用的是默认身份验证系统,则可以使用\ Auth :: user()来检索登录的用户,而不必手动将其放入会话中。 (http://laravel.com/docs/5.0/authentication#retrieving-the-authenticated-user) – Maarten00

回答

0

如何存储用户名?如果你使用Session :: flash(),那么只有一个请求被清除 - 你需要使用Session :: put()来保留它。

尽管您可能也可以使用Auth :: user()来获取当前登录的用户信息,并且可以从那里获取您需要的信息。