控制者和雄辩的困境

时间:2013-06-07 21:25:58

标签: laravel laravel-4

我是Laravel的新手,并且已经在这个问题上喋喋不休了一段时间。我只是想从表中获取一行并将其移交给视图。

该表有两个应与此查询匹配的字段,第一个当然是id,第二个是与登录用户匹配的user_id。当它完成时我计划用失败消息进行响应(没有找到匹配id:X的记录)。

public function show($id)
{
   $data = Partners::where('id', $id);->where('user_id', Auth::user()->id)->get();
   return View::make('partners.showone')
            ->with('data', $data)
            ->with('title', 'View Record')
            ->with('breadcrumb', 'View Partner');       

}

在我看来:

{{ $data->firstName }}

此配置给出了以下错误:

未定义属性:Illuminate \ Database \ Eloquent \ Builder :: $ firstName

1 个答案:

答案 0 :(得分:0)

错字...你有一个;在那里....它应该是......

   $data = Partners::where('id', $id)->where('user_id', Auth::user()->id)->get();

但你的查询确实应该是这个..

$data = Partners::find($id)->where('user_id', Auth::user()->id)->first();

如果你只想要一行

编辑(根据您的评论)

对于您的合作伙伴模型中的手机(我正在使用Laravel 3 btw)

function phone(){
 return $this->hasMany('Phone');
}

然后使用上面的$ data查询,您可以通过...获取电话。

$data->phone();