Javascript 使CreateQueryBuilder返回嵌套对象而不是一个平面对象
我在用Typescript和TypeORM。使用CreateQueryBuilder,我希望接收嵌套对象。相反,我接收的是一个平面对象,如第二块所示。我怎样才能解决这个问题Javascript 使CreateQueryBuilder返回嵌套对象而不是一个平面对象,javascript,node.js,typescript,typeorm,Javascript,Node.js,Typescript,Typeorm,我在用Typescript和TypeORM。使用CreateQueryBuilder,我希望接收嵌套对象。相反,我接收的是一个平面对象,如第二块所示。我怎样才能解决这个问题 const x = await getConnection() .createQueryBuilder() .select(['reportHead', 'order', 'workOrder']) .from('report_head', 'reportHead') .innerJoin('reportHe
const x = await getConnection()
.createQueryBuilder()
.select(['reportHead', 'order', 'workOrder'])
.from('report_head', 'reportHead')
.innerJoin('reportHead.workOrder', 'workOrder')
.innerJoin('workOrder.order', 'order')
.where(`order.customer.id = :customerId`, { customerId: req.user.customer.id })
.execute();
如何避免数据看起来像这样:
{
"reportHead_id": "asd",
"reportHead_number": "123",
"workOrder_id": "dsa",
"workOrder_status: "OK",
"order_id": "sda",
"order_whatev": "ks"
}
{
"reportHead": {
"id": ...
},
"workOrder": {
"id": ...
},
"order": {
"id": ...
}
}
而是有这样一个嵌套对象:
{
"reportHead_id": "asd",
"reportHead_number": "123",
"workOrder_id": "dsa",
"workOrder_status: "OK",
"order_id": "sda",
"order_whatev": "ks"
}
{
"reportHead": {
"id": ...
},
"workOrder": {
"id": ...
},
"order": {
"id": ...
}
}
解决方案是不使用.execute(),而是使用.getMany()。解决方案是不使用.execute(),而是使用.getMany()