首页 > 解决方案 > 与3表的雄辩关系

问题描述

我是 laravel 的新手。我被 laravel 关系困住了。
我有 2 个表,如下所示:
asset_category (id,name,parent_id)这里是表的parent_id引用这里是表的引用 简而言之,我有类别、它们的子类别和维护类别(maintenance_category 可以是其中一个或的一部分) 我必须在表中显示所有类别,例如:idasset_category
asset_maintenace_category(id,name,parent_id)parent_ididasset_category
category_idsubcategory_id

S.No|category     |sub-category|maintenace_category
----------------------------------------------------
  1.|Activity area| Arena      |clean and surfacing
  2.|Activity area| Arena      |surfacing
  3.|Activity area|            |General maintenance

那么如何定义这些表之间的雄辩关系并显示结果呢?请建议

标签: phplaraveleloquent

解决方案


首先设置你的外键,然后尝试像这样连接表:

Parent::where('parent.id', '=', id)
        ->join('asset_category' , 'asset_category.parent_id', '=', 'parent.id')
        ->join('asset_maintenace_category', 'asset_maintenace_category.parent_id','=', 'parent.id')
        ->select('parents. ...' ,
            'asset_category. ...' ,
            'asset_maintenace_category. ...'
            )
        ->get();

推荐阅读