【发布时间】:2018-01-08 03:03:53
【问题描述】:
我的应用程序中有一个推荐系统。即,一个用户可以推荐其他用户。
用户表
id name
1 A
2 B
3 C
推荐表
id referrer_id referee_id
1 1 2
2 2 3
我想显示用户的推荐。
用户模型
public function referrals()
{
return $this->hasMany('App\Models\Referral','referee_id','id');
}
推荐模型
public function referrer_user()
{
return $this->belongsTo('Modules\User\Models\User','referrer_id','id');
}
public function referee_user()
{
return $this->belongsTo('Modules\User\Models\User','referee_id','id');
}
在 User 模型中定义 hasMany 关系,在 Referrals 模型中定义 belongsTo 关系,我没有得到想要的结果。
@foreach($user->referrals as $key => $referral)
{{dd($referral->referee_user->name)}}
@endforeach
这将返回用户本身的名称(推荐人)而不是推荐人
【问题讨论】:
-
您确定您正确地创建了推荐人吗?也许你在创建时切换 id?到目前为止,您的代码对我来说似乎还可以。
-
不正确
标签: laravel eloquent laravel-5.3