我有两张桌子:
附件 ID,代码,细节
PriceRevision ID,accessories_id,revised_price
我想跟随json:
[
{ "id": 1, "code": "G4007", "detail": "Flyscreen round Gasket -7", "revised_price::25 }
,
{ "id": 2, "code": "CZBR-100S", "detail": "Single Bearing Roller " "revised_price::35 }
]
我如何结合两个表来获得上述结果?我假设我必须加入这两个表?
我做过类似的事情,但只得到配件表的数据:
$data3=InventoryAccessories::select('id','code','sl_detail')
->get();
foreach ($data3 as $d) {
$data4=ProductPriceRevision::select('revised_price')->get();
# code...
}
return $data3;
答案 0 :(得分:0)
如果您使用Laravel的eloquent
ORM,那么您可以通过简单地设置两个表之间的关系(一对多,多对多等)来实现。然后,您可以访问另一个表格,如:
$accessories = InventoryAccessories::all();
$accessories->priceRevision->revised_price;
其中$accessories
是一个变量,它只包含使用eloquent
的数据库中的所有附件。
然后你可以格式化数据以生成你想要的json
在这里,您可以找到设置两个表之间关系的方法:Click Me
否则,您可以通过使用Query Builder连接两个表来从db获取这些数据来进行查询。在这里,您可以找到如何使用查询构建器连接两个表:https://laravel.com/docs/5.1/eloquent-relationships
答案 1 :(得分:0)
您可以尝试$model->with('relation');