[英]How to handle multiple levels of one-to-many relationships in laravel
我的laravel 5.3應用程序中有三個模型,其關系如下
Category:
public function subcategories(){
return $this->hasMany('App\Subcategory');
}
Subcategory:
public function category(){
return $this->belongsTo('App\Category');
}
public function posts(){
return $this->hasMany('App\Posts');
}
Post:
public function subcategory(){
return $this->belongsTo('App\Subcategory');
}
現在在我的控制器中我只有一個類別,我想要屬於我所屬類別的子類別中的所有帖子(按ID排序)。 就像是:
$posts = $category->subcategories->posts;
但我不知道該怎么做。 幫助將不勝感激。
嘿艾哈邁德
你需要的是使用hasManyThrough關系:
Category:
public function posts(){
return $this->hasManyThrough('App\Posts', 'App\Subcategory');
}
然后你可以像這樣使用它:
$posts = $category->posts;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.