Laravel Join Query让Trying获取非对象的属性

时间:2014-11-07 16:32:54

标签: laravel-4

我得到了连接查询的结果,但是当我想要显示它时,它说:尝试获取非对象的属性。我正在研究一个简单的博客系统,我正在尝试从以下朋友那里获取博客。以下是我的观点:

@foreach($blogposts as $posts)
       <h4><a href="">{{ $posts->title }}</a></h4>

@endforeach

我确定问题在于视线,但我也添加了我的控制器,可能需要,这是我的控制器:

    $posts=DB::table('following')
    ->join('page_posts', 'following.p_id', '=', 'page_posts.p_id')
    ->select('page_posts.*')
    ->where('u_id','=',Auth::User()->id)
    ->orderBy('updated_at','desc')
    ->get();
        return View::make('index')->with('blogposts',$posts);

请帮帮我。

2 个答案:

答案 0 :(得分:0)

试试这个。您需要像这样传递值。

return View::make('index',array('blogposts'=>$posts));

答案 1 :(得分:0)

我应该用eloquent来解决这个问题,这意味着我的控制器应该是这样的:

$posts=following::join('page_posts', 'following.p_id', '=', 'page_posts.p_id')
->select('page_posts.*')
->where('u_id','=',Auth::User()->id)
->orderBy('updated_at','desc')
->get();
    return View::make('index')->with('blogposts',$posts);

问题解决了。我发布了答案,因为其他人可能需要。