我有两个表的追随者和用户。。。followers表有follower和followee id。现在我想检索一个用户的关注者/被关注者。
$followers_id=Follower::where('followee_id',$user->id)->select('follower_id')->get();
$following_id=Follower::where('follower_id',$user->id)->select('followee_id')->get();
$followers=User::where('id',$followers_id->follower_id)->take(15)->get();
$following=User::where('id',$following_id->followee_id)->take(15)->get();
我怎样才能做到这一点?
首先,您需要在User类中定义一个多对多关系,该关系将使用中间跟随者表:
public function followers() {
$this->belongsToMany(User::class, 'followers', 'followee_id', 'follower_id');
}
现在,您应该能够通过简单地访问来获得给定用户的追随者列表
$followers = $user->followers;