所以我遇到了一个问题,我需要使用猫鼬从NodeJS中的两个集合中获取结果。基本上我有users
集合和boughtItems
集合。
users
集合由_id
和username
boughtItems
集合由item_id
,username
(购买商品的用户)组成
有人可以显示如何从users
和boughtItems
获取结果,所以当我显示所有users
时,他们所购买的商品将显示在同一页面的名称旁边。
我有两个模型:User
和BoughtItem
User.aggregate([{
$lookup: {
from: "boughtitems", // collection name in db
localField: "username",
foreignField: "username",
as: "boughtitems"
}
}]).exec(function(err, users) {
console.log(users);
});
此代码块使用户返回带有buyedItems的商品,但是每个购买的商品都是[Object]
如何从该object
获取全部信息?
所以我做了JSON.stringify(users)
,现在我得到了所有信息。
我明白了:
如何在渲染文件中显示购买项:
{{#each users}}
{{this.boughtitem['item_power']}}
{{/each}}
答案 0 :(得分:0)
您的查询实际上正在获取BoughtItem
数据。问题是console.log
,它不打印嵌套对象。如果要打印整个对象,请尝试以下操作:
console.log(JSON.stringify(users));