gpt4 book ai didi

node.js - KnexJS 查询循环

转载 作者:太空宇宙 更新时间:2023-11-03 22:46:43 34 4
gpt4 key购买 nike

我对 Node、KnexJS 和 Promise 非常陌生,我正在尝试构建一个简单的循环来查询项目,然后添加与它们关联的图片。

我查看了这个答案,虽然它教了一些东西,但我认为它不适用于我的情况:Knex Transaction with Promises

到目前为止我有这个:

router.get('/', function(req, res, next) {
knex('parts').where(req.query)
.orderBy('date_updated', 'DESC')
.then(function(data){

for (var k in data) {
knex('photos')
.select()
.where('part_id', data[k].id)
.then(function(photos){
data[k].photos = photos;
});
}
return data;

})
.then(function(data){
res.render('parts/index', { title: 'Express', data: data, query: req.query });
});
});

这显然是错误的,但我只是不知道这些情况下的方法。

最佳答案

添加到 IvanSF 的答案中,您可以简单地在其周围包装一个 Promise.all() ,然后 res.send() 响应。就像这样:

Promise.all(rows.map(row => {
return knex('table')
.select('*').where('row_id', row.id)
.then(table => {
row.table = table;
return row;
});
})).then(response => {
res.send(response);
});

关于node.js - KnexJS 查询循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31704936/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com