查看laravel 4.0错误未定义变量

时间:2016-11-11 04:59:02

标签: php laravel laravel-4

我是laravel和php的新手,即时通讯使用laravel 4.0 我想显示已通过菜单视图配置文件登录的用户配置文件,但始终存在错误

Undefined variable: user

这是我的Layout.blade.php

<li class="dropdown {{Request::is('users*') ? 'active' : ''}}">
   <a href="#" class="dropdown-toggle" data-toggle="dropdown">Profile <b class="caret"></b></a>
   <ul class="dropdown-menu">
      <li>
         <a href="{{ action('UserController@show', array($user->id)) }}">{{Sentry::getUser()->email}}</a>
      </li>
   </ul>

这是我的UserController.php

public function show($id)
{
    $user = $this->user->byId($id);


    if ($user == null || !is_numeric($id)) {
        // @codeCoverageIgnoreStart
        return \App::abort(404);
        // @codeCoverageIgnoreEnd
    }

    return View::make('users.show')
    ->with('user', $user);

}

2 个答案:

答案 0 :(得分:1)

检查代码的这一行

  $user =$this->user->byId($id);

我认为应该改为User::byId。并且还需要在User模型中将函数定义为byId。或者使用诸如User::find($id)

之类的雄辩函数

尝试使用以下代码行替换上面的行

$user=User::find($id);

答案 1 :(得分:0)

如果我错了,请纠正我。

只是想知道 Layout.blade.php 文件。您的控制器文件将返回 users.show 布局文件。我想你的文件夹结构看起来像

 /users/show.blade.php 

您是否返回 show.blade.php layout.blade.php

相关问题