我有六个模型:分区、区域、区域、分支、管理信息系统和策略。一个分区有多个区域,一个区域有多个区域,一个区域有多个分支,一个分支有多个mises,一个管理信息系统有一个策略,一个策略属于一个管理信息系统。我想立即加载一个包含mis、分支、区域、区域和分区的策略。当我尝试这样做时,一个策略被加载了缺失和分支,但是其他的关系没有被加载。以下是我的模型:
部门:
public function regions () {
return $this->hasMany(Region::class);
}
public function areas () {
return $this->hasManyThrough(Area::class, Region::class);
}地域:
public function division () {
return $this->belongsTo(Division::class);
}
public function areas () {
return $this->hasMany(Area::class);
}
public function branches () {
return $this->hasManyThrough(Branch::class, Area::class);
}区域:
public function region () {
return $this->belongsTo(Region::class);
}
public function branches () {
return $this->hasMany(Branch::class);
}分支:
public function area () {
return $this->belongsTo(Area::class);
}
public function mises () {
return $this->hasMany(Mis::class);
}Mis:
public function policy () {
return $this->hasOne(Policy::class);
}
public function branch () {
return $this->belongsTo(Branch::class);
}政策:
public function mis () {
return $this->belongsTo(Mis::class);
}这就是我试图做的急切加载:
public function showPolicyReport () {
$policies = Policy::with('mis.branch.area.region.division')->get();
dd($policies);
}如果有人能帮我找到解决方案,我将不胜感激。
发布于 2017-05-03 15:20:46
不要紧。实际上,关系已正确加载。dd()方法并没有显示所有的嵌套关系。
https://stackoverflow.com/questions/43752848
复制相似问题