Laravel 视图未获取会话数据

Laravel view is not getting session data

我正在尝试将一些数据传递给视图,但视图似乎没有获取它。这是我控制器中的 getProfile 路由:

public function getProfile($username)
{
    if(User::userExists($username))
    {
        if($username == Auth::user()->username)
            return View::make('user.profile');
        else
            return View::make('user.profile')->with('user-requested', $username);

}

视图应该根据参数 $username 是否为登录用户而改变,其中它将显示更多信息并允许编辑,如果不是,则将显示有限的信息。我正在检查我视图中的会话 'user-requested' 键,如下所示:

Username: {{ Session::get('user-requested'); }}

并且还喜欢以下内容:

@if(!Session::has('user-requested'))
//display full profile info
@else
//display limited profile info

目前,无论我输入的用户名参数是否不是当前登录的用户,视图都只显示完整的个人资料信息块。会话变量 'user-requested' 似乎为空,但我不确定为什么,有什么原因吗?

您不需要使用 Session 来获取视图中的用户请求的变量,只需像这样简单地使用它。

@if(isset($user-requested))

@else

@endif

要将数据放入会话中,您必须使用 Session::put('key','value')。使用 with() 在会话中设置变量的唯一方法是将它们与重定向一起使用。