我想在laravel中获得一棵树的水平。 我有一个类别的树,大约有三个级别。
->parent category
-->sub category
-->child category
我希望能够知道父类别下面有多少级别。所以在上面的例子中答案是2.
在我的模型中,我定义了以下关系:
public function children()
{
return $this->hasMany('App\Models\Category', 'parent_id', 'id');
}
任何建议表示赞赏。谢谢!
答案 0 :(得分:0)
通过关系,你可以称他们为财产。话虽如此,你可以通过几种方式得到相同的答案。
<强>属性强>
$model->children->count();
这样做将运行一个select查询,该查询返回一个集合,然后对它们进行计数。
<强>功能强>
$model->children()->count();
这将运行一个查询,对记录进行计数。