在Laravel中显示所有关注的用户

时间:2015-12-13 18:17:06

标签: php laravel

我正在尝试让所有用户跟随其他用户。我的关注表就像 id,user_id,target_id 。我可以为用户获取所有target_id但我的问题是我现在如何使用target_id来检索users表上的用户。我尝试了一些方法,但我得到的最好的只是一个用户而不是当前用户关注的所有用户。这就是我的控制器的样子。它只返回一个用户。

$follows = Follow::where('user_id', Auth::id())->get();

         foreach ($follows as $follows) {

         $followID = $follows->target_id;
         }

        $following = User::where('id', $followID)->get();

我的用户模型

public function followers()
    {
        return $this->hasMany('Follow', 'target_id');
    }

1 个答案:

答案 0 :(得分:2)

$following = User::whereIn('id', function ($query) {
    $query->select('target_id')->from('follows')->where('user_id', auth()->id());
})->get();

或者,您可以在User模型中set up a BelongsToMany relationship