英文:
How to process the data found from a mongodb query using node.js and mongoose
问题
我正在尝试处理从查询中找到的数据。但是,由于某种原因,我无法获取到结果。
我能够看到查询找到了2条记录,但我无法获取实际的记录。
不确定我在哪里搞错了
这是终端中的输出:
{
message: 'Channels fetched successfully!',
channels: [],
maxChannels: 2
}
很奇怪,因为我在我的应用程序的其他地方使用相同的代码片段,它可以完美地返回计数和记录,但这次不行。
所以我只想知道如何处理来自响应的记录。
英文:
I am tryin to process the data found from a query. however, but I am not able to get back the results from it for some reason.
I am able to see it found 2 records from the query, but I cant get the actual records.
not sure where I am messing up here
const channelQuery = Channel.find({ fields: { $all: channelFieldsFieldNames } })
let fetchedChannels;
channelQuery
.then(documents => {
fetchedChannels = documents;
return Channel.count();
})
.then(count => {
console.log({
message: "Channels fetched successfully!",
channels: fetchedChannels,
maxChannels: count
});
})
.catch(error => {
console.log(error)
res.status(500).json({
message: "Fetching channels failed!"
});
});
this is what i see in the terminal:
{
message: 'Channels fetched successfully!',
channels: [],
maxChannels: 2
}
its weird because I use the same snip of code in other places in my app and it returns the count and the records perfectly, but not this time
so i just want to know how to process the records from the response
i found a few similar stackoverflow posts but they didnt did not discuss how they process the data, they only talked about the query itself
https://stackoverflow.com/questions/3305561/how-to-query-mongodb-with-like
答案1
得分: 1
你正在使用两个不同的查询:
return Channel.count();
=> 这里你在Mongo中计算所有的频道数
而你的搜索 const channelQuery = Channel.find({ fields: { $all: channelFieldsFieldNames } })
却找不到任何结果。
英文:
You are using two different querys:
return Channel.count();
=> here you count all the Channels in mongo
while your search const channelQuery = Channel.find({ fields: { $all: channelFieldsFieldNames } })
finds nothing
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论