我是Laravel的新人,在言语上有自我关系的问题。 我有表users
与字段id
和referrer
,其中referrer
是表用户的外键(每个用户有一个引用也是用户)。并且表invoice
与用户有关系。Laravel雄辩的自我关系
我想获取用户和引荐来源的所有发票。
在模型中我犯了关系:
public function referrer()
{
return $this->hasOne('User', 'referrer');
}
public function referral()
{
return $this->belongsTo('User','id');
}
public function invoice()
{
return $this->hasMany('invoice', 'user_id');
}
和查询:
$this->model->with(['invoice'])
->with(['referrer'=> function($q)
{
$q->with(['invoice']);
}]);
}]);
但此查询将返回我的用户和他们的发票,但不返回引荐只是空数组键referrer =>
更新
更改关系:
public function referrer()
{
return $this->hasOne('User', 'referrer');
}
public function referral()
{
return $this->belongsTo('User','referrer');
}
public function invoice()
{
return $this->hasMany('invoice', 'user_id');
}
现在倾销结果我看到引用关系,但是当我试图让$user->referrer
我只是推荐人,而不是引用对象
感谢您的回答,但已经尝试过,没有工作。 –