我想要实现商品收藏夹的功能,实现逻辑是建一个favorites表,里面的字段是用户+产品id,先从favorites表过滤出当前用户的数据,再通过过滤结果的产品id到product表查找具体的商品信息
product表
favorites表
js代码
MongoClient.connect(url, { useUnifiedTopology: true }, function(err, db) {//数据库连接
if (err) throw err;
var dbo = db.db("AuctionDB");//连接到某一个具体的集合
var user = req.query.user;
var query = {"user":user};// 查询条件
console.log(query);
dbo.collection("favorites").aggregate([
{
$lookup:{
from:"product",
localField: "productId",
foreignField: "productId",
as:"myFavorites"
}
},
{
$match:{
"user":user
}
},
]).toArray(function(err, result) { // 返回集合中所有数据
console.log(result);
if (err) throw err;
resp.json(result)
db.close();
});
});
查找结果
感觉只是一个很简单的问题,但是不知道为什莫会出错,求解答