我的目标是找到符合用户选择的歌曲。用户有机会排除他不喜欢的类型。
This is basically a duplicate of this question,除了我希望能够在Aggregate
操作而不是Find
中执行此操作,因为我需要添加其他阶段。
现在,我正在尝试聚合以排除属于用户不喜欢的流派的歌曲。
我的歌json是这样的(请记住这是虚拟数据 - 但这首歌真的很棒):
{
"_id": {
"$oid": "5890aa3b0a9f110011698fac"
},
"artist": "Beach House",
"songName": "Master Of None",
"genres": [
{
"$oid": "58624b4298fba881a46663a01"
},
{
"$oid": "58624b9d98fba772a46663a05"
}
]
}
一首歌可以有多种类型,存储在一个对象数组中,作为对不同集合中的类型文档的引用。
基本上,用户不喜欢的流派属于一系列流派$oid
。
说
dislikedGenres = [ "786761gg1G176ga1", "78676187g1G176hsj3", "78676187g1G1761sj4" ]
我要做的是说“如果你找到一首有这些类型的歌曲,请把它排除在外”。
知道怎么做到这一点?我觉得我错过了一些非常明显的东西......
提前感谢您的帮助!非常感激。 如果您需要额外信息,请发表评论。