Делаем hasMany с User на таблицу друзей юзера
public function friends(){
return $this->hasMany('App\Models\Friend, 'user_id', 'id');
}
В этой таблице сделать 2 ид:
Кто добавляет в друзья (Auth:id()) поле user_id
Кого юзер добавляет в друзья - поле friend_id
В итоге методом create делаем запись при добавлении в друзья. Если юзера добавляют в друзья – аналогично.
получаем
$user->friends()->get()
$user->friends()->find($id)