我正在研究laravel代码,我发现难以获得子类别列表的嵌套查询。我的表结构是,列名在下面
id | category_name | cat_head
1 | ultra slim suit | suit
2 | slim suit | suit
3 | Shoes | shoes
4 | Hats | accessories
5 | Cufflinks | accessories
我希望cat_head作为主菜单和category_name下的category_name。 请用laravel雄辩的方式帮助我。
答案 0 :(得分:0)
您可以创建两个表,例如heads
和categories
,您可以在这些表之间定义one-to-many
关系。所以,你的表应该是这样的:
头表
+-----+----------+------------+
| id | cat_head | timestamps |
+-----+----------+------------+
类别表
+-----+---------------+---------+------------+
| id | category_name | head_id | timestamps |
+-----+---------------+---------+------------+
现在,要定义这些表之间的关系,您必须创建两个模型:
头型
public function categories()
{
return $this->belongsTo('App\Categorie');
}
分类模型
public function head()
{
return $this->hasMany('App\Head');
}
然后,在控制器中,您可以执行以下操作:
$menu = Head::with('categories')->get();
希望这有帮助。