2016-08-15 40 views
2

我正在构建一个post系统,用户可以在他的墙上张贴邮件。邮件已成功创建,正在保存到数据库中,但无法从数据库中获取。dd函数无法从数据库中获取内容

我也有用户和帖子之间的关系。

我PostController中:

public function getmyplace() 
{ 

    $posts=Post::where(function($query){ 
     return $query->where('user_id',Auth::user()->id) 
      ->orWhere('user_id',Auth::user()->friends()->lists('id') 
       ); 
    }) 
    ->orderBy('created_at','desc')->get(); 
    dd($posts); 

    $accounts=Account::orderBy('updated_at','desc')->limit(1)->get(); 

    return view('myplace',['posts'=>$posts,'accounts'=>$accounts]); 
} 
public function postCreatePost(Request $request) 

{ 
    Auth::user()->posts()->create([ 

     'body' => $request->input('body'), 

     ]); 

    return redirect()->route('myplace'); 
} 

我的数据库:

enter image description here

输出:

enter image description here

回答

1

“返回” 语句未嵌套查询构建器和收集applyed :: lists()方法od返回数组。试试这个:

$posts = Post::where(function($query){ 
     $query->where('user_id',Auth::user()->id) 
      ->orWhereIn('user_id',Auth::user()->friends()->lists('id')); 
    }) 
    ->orderBy('created_at','desc')->get(); 
dd($posts);