【发布时间】:2016-06-04 19:50:52
【问题描述】:
让我先解释一下我的表的关系,然后我会解释我不能做什么。
所以,我有一个名为“Company”的实体,它有很多“Income”,其中有很多“IncomeUnitSale”,其中有一个“IncomeUnitSaleUnitPrice”
Company 1->* Income 1->* IncomeUnitSale 1->1 IncomeUnitSaleUnitPrice
型号:
公司模式
public function Income(){
return $this->hasMany('App\Income');
}
收入模型(表有“company_id”)
public function Company(){
return $this->belongsTo('App\Company');
}
public function IncomeUnitSale(){
return $this->hasMany('App\IncomeUnitSale');
}
IncomeUnitSale 模型(表有“income_id”)
public function Income(){
return $this->belongsTo('App\Income');
}
public function IncomeUnitSaleUnitPrice(){
return $this->hasOne('App\IncomeUnitSaleUnitPrice');
}
IncomeUnitSaleUnitPrice(表有“income_unit_sale_id”)
public function IncomeUnitSale(){
return $this->belongsTo('App\IncomeUnitSale');
}
我想要做的是:
$company = Company::where("id","=",1)->first();
$company->Income->IncomeUnitSale->IncomeUnitSaleUnitPrice
但它说它为空,它一直有效到$company->Income->IncomeUnitSale,但在那之后不显示任何关系。
谁能告诉我我做错了什么?
谢谢!
【问题讨论】:
标签: laravel database-design model eloquent database-relations