Node.js 远程方法、查询和循环关系数据
我有一个叫比尔的型号,它有很多订单 如果我在Bill中编写一个远程方法,我如何查询一个Bill并循环它的订单 bill.jsonNode.js 远程方法、查询和循环关系数据,node.js,loopbackjs,Node.js,Loopbackjs,我有一个叫比尔的型号,它有很多订单 如果我在Bill中编写一个远程方法,我如何查询一个Bill并循环它的订单 bill.json { “姓名”:“账单”, ... “关系”:{ “命令”:{ “类型”:“有许多”, “型号”:“订单”, “foreignKey”:“orderId” } } bill.js Bill.doLoop=异步函数(id、body、回调){ let bill=wait bill.findById(id,{include:['orders']}) for(让我们看一下账单
{
“姓名”:“账单”,
...
“关系”:{
“命令”:{
“类型”:“有许多”,
“型号”:“订单”,
“foreignKey”:“orderId”
}
}
bill.js
Bill.doLoop=异步函数(id、body、回调){
let bill=wait bill.findById(id,{include:['orders']})
for(让我们看一下账单的顺序。顺序){
控制台日志(订单);
}
}
如果执行此操作,则会出现以下错误:
请求POST/api/bills/1/doLoop的未处理错误:TypeError:bill.orders[Symbol.iterator]不是函数
如果我将bill转换为JSON字符串并返回,则可以访问订单,但这感觉非常肮脏:
let billJson=JSON.parse(JSON.stringify(bill))
for(让billJson.orders的顺序){
控制台日志(订单);
}
我在环回文档中找到了答案:
在Node.js API中,调用toJSON()将返回的模型实例和相关项转换为普通JSON对象
将代码更新为此工作:
Bill.doLoop=异步函数(id、body、回调){
let bill=wait bill.findById(id,{include:['orders']})
for(让bill.toJSON()的顺序为orders){
控制台日志(订单);
}
}
根据错误消息,bill.orders
不是。您是否尝试过:for(让对象.value的顺序(billJson.orders)){…}
?