假设您有装有物品的盒子。每个项目可能在多个盒子中,因此每个项目都有一个 id 数组,用于该项目所在的盒子。
childA= {...boxIds: ['000001', '000002', '000003']...}
在 mongodb 中,您可以说child.find({boxIds:'000002'})
获取 childA 和所有其他孩子,其中 000002 在 boxIds 数组中。这是我在猫鼬(咖啡脚本)中尝试过的:
data = boxIds: box._id
Child.find data, (err, children) -> doSomething
我总是得到一个空的结果。我找不到问题还是猫鼬不支持这种类型的查询?
编辑
Child = new mongoose.Schema
...
boxIds: Array
...
box._id 是普通的 mongodb id 字符串
MongoDB中的示例查询:db.child.find( {boxIds: '50bb5d10ba1e232401000002'} )
结果:......., "boxIds" : [ "50bb5d10ba1e232401000002" ], .....
编辑2
难道 _id 不是字符串?