我有一个类似于:
的数据库模式{
foreignKeyId: String
question: String
...: ...
answers: [
{
answerText: String
isCorrect: Boolean
}
,
...
]
}
我现在想要一个find() - 查询通过foreignKeyId查询文档,并且只包含字段foreignKeyId,question和answers。$。answerText。
当我使用MeteorJS时,我无法将光标返回到数据库。
当我像{fields: {foreignKeyId: 1, "answers.$.answerText":1}}
一样过滤它时,我收到一个错误,即投影与我的查询不匹配
答案 0 :(得分:1)
我找到了解决方案。
不是
db.find(query, {fields: {"array.$.subkey": 1}});
它是
db.find(query, {fields: {"array.subkey": 1}});