有三个表
order,package,packageGoods
Order模型
public function orderPackageInfo(){
return $this->hasMany('OrderPackage','order_id','order_id');
} Package模型
public function orderPackageGoods(){
return $this->hasMany('OrderGoods','package_id','package_id');
}调用查询Order->with('orderPackageInfo.orderPackageGoods')->select();
这样得出来的数据package里面的packageGoods包含了其他order_id的packageGoods.如这样
[0]=>[
'order_id'=>1,
'package'=>[
'order_id'=>1,
'package_id'=>1,
'package_goods'=>[
[0]=>['goods_id'=>1,package_id => 1,order_id =>1],
[1]=>['goods_id'=>2,package_id => 1,order_id =>1],
[2]=>['goods_id'=>1,package_id => 1,order_id =>2],
[3]=>['goods_id'=>2,package_id => 1,order_id =>2],
]
]
],
[1]=>[
'order_id'=>2,
'package'=>[
'order_id'=>2,
'package_id'=>1,
'package_goods'=>[
[0]=>['goods_id'=>1,package_id => 1,order_id =>1],
[1]=>['goods_id'=>2,package_id => 1,order_id =>1],
[2]=>['goods_id'=>1,package_id => 1,order_id =>2],
[3]=>['goods_id'=>2,package_id => 1,order_id =>2],
]
]
],现在想要弄成这样的结构[0]=>[
'order_id'=>1,
'package'=>[
'order_id'=>1,
'package_id'=>1,
'package_goods'=>[
[0]=>['goods_id'=>1,package_id => 1,order_id =>1],
[1]=>['goods_id'=>2,package_id => 1,order_id =>1]
]
]
],
[1]=>[
'order_id'=>2,
'package'=>[
'order_id'=>2,
'package_id'=>1,
'package_goods'=>[
[0]=>['goods_id'=>1,package_id => 1,order_id =>2],
[1]=>['goods_id'=>2,package_id => 1,order_id =>2]
]
]
],要怎么写求助中 最佳答案