Laravel 拉威尔5枢轴台
我正在尝试为用户实现一个friendlist 所以一个用户可以有很多朋友 但是打电话给朋友,我的关系不好:Laravel 拉威尔5枢轴台,laravel,laravel-5,Laravel,Laravel 5,我正在尝试为用户实现一个friendlist 所以一个用户可以有很多朋友 但是打电话给朋友,我的关系不好: user id friends user_id friend_user_id 类用户: public function Friends(){ return $this->hasMany('App\User', 'friends'); } 因此Auth::User()->Friends应该返回Usermodels当创建与同一模型的关系时,您可以执行以下操作:
user
id
friends
user_id
friend_user_id
类用户:
public function Friends(){
return $this->hasMany('App\User', 'friends');
}
因此
Auth::User()->Friends
应该返回User
models当创建与同一模型的关系时,您可以执行以下操作:
模型/User.cs
public function Friends()
{
return $this->hasMany('User', 'user_friend_of', 'id'); // assuming user_friend_of is the FK on user-table
}
public function User()
{
return $this->belongsTo('User');
}
这意味着您只有一个表,其中有一个外键指向同一表中的另一行,例如:(id-name-user\u friend\u of)您实际上没有“一对多”关系,而是“多对多”,其中friends
是您的加入表
试试这个:
public function Friends(){
return $this->belongsToMany('App\User', 'friends', 'user_id', 'friend_user_id');
}
在用户类中,按如下方式定义函数:
public function Friends(){
return $this->hasMany('friends');
}
调用$user->Friends()->get()应该会返回所需的一切。请注意,“friends”应该是表名。请提供更多信息:-friends也是“User”类还是单独的“Friend”类?User是唯一的类