【发布时间】:2017-02-17 14:24:31
【问题描述】:
我有一个 Stock 对象数组,并尝试将 n 个 Report 对象附加到每个 Stock 对象:
router.get('/stocks', function (req, res, next) {
Stock.find({}, function (err, stocks) {
if (err) {
next(err)
return
}
async.map(stocks, function (stock, callback) {
Report.find({ 'isin': stock.isin }).sort('-created').limit(10).exec(function (err, reports) {
if (err) {
next(err)
return
}
stock.reports = reports
return callback(null, stock)
})
}, function (err, stocks) {
if (err) {
next(err)
return
}
res.json(stocks)
})
})
})
我得到的是股票对象列表没有报告...我想要的是相同的股票,但设置了附加属性reports。
最有趣的是,console.log(stock) 在分配 stock.reports = reports 之前和之后是相同的,但 console.log(stock.reports) 提供了实际的报表对象数组...
【问题讨论】:
标签: javascript node.js mongoose async.js