我试图获得包含数组中列出的所有tags
的所有submissions
文档。
我当前的代码是这样的:
submissions.find({ tags: { $all => tags } })
print tags.count
然而,在运行时,我在第二行收到以下错误:
BSON::InvalidKey at /
NilClass instances are not allowed as keys in a BSON document.
还应该注意的是,下面的可以按照应该的方式工作(尽管它没有达到我想要的结果):
submissions.find({ tags: tags })
print tags.count
我如何修复我的原始代码,以找到所需的文档正确?
MongoDB中的$all表达式为:
submissions.find({ tags: { $all: tags }});
在这种情况下,"tags"必须是一个数组(tags = ['tag1','tag2','tag3']
)
为什么用"$all => tags"代替"$all: tags" ?