namespace app\site\model;
use think\Model;
class Category extends Model
{
protected $name = 'site_category';
//==============================
// 一多对:父类
//==============================
public function topcategory()
{
return $this->belongsTo('Category','parent_id','id');
}
//==============================
// 一对多:子类
//==============================
public function subcategory()
{
return $this->hasMany('Category','parent_id','id');
}
}
循环:foreach($object_category as $value)
{
echo '<p>一级类名:'.$value->name.' —— 子类数('.count($value->subcategory).')</p>';
foreach($value->subcategory as $subvalue)
{
echo '<p>二级类名:'.$subvalue->name.' —— 子类数('.count($subvalue->subcategory).')</p>';
}
}
输出:一级类名:1 —— 子类数(3)
二级类名:1-1 —— 子类数(1)// 没有子类可结果是1
二级类名:1-2 —— 子类数(1)// 没有子类可结果是1
二级类名:1-3 —— 子类数(1)// 没有子类可结果是1
一级类名:2 —— 子类数(2)
二级类名:2-1 —— 子类数(1)// 没有子类可结果是1
二级类名:2-2 —— 子类数(1)// 没有子类可结果是1
一级类名:3 —— 子类数(0)// 正确
一级类名:4 —— 子类数(0)// 正确
一级类名:5 —— 子类数(0)// 正确
这才发的帖……打算百度一下,居然搜到自己问的问题,收录好快啊,晕死~
最佳答案
