我是mongodb和mongoose的新手,我在获取子子阵列时遇到了麻烦.
我的数据是这样的:
[
{_id : ...,
name : 'Category name1',
products : [
{
code : 'zxcv'
name : 'T-Shirt 1',
items : [
{code:'zxcv', size : 'S'}
{code:'zxcv', size : 'M'}
{code:'zxcv', size : 'L'}
{code:'zxcv', size : 'XL'}
]
},
{
code : 'qwerty'
name : 'T-Shirt 2',
items : [
{code:'qwerty', size : 'S'}
{code:'qwerty', size : 'M'}
{code:'qwerty', size : 'L'}
{code:'qwerty', size : 'XL'}
]
}
]
},
{_id : ...,
name : 'Category name2',
products : [ ... ]
}
]
Run Code Online (Sandbox Code Playgroud)
我想得到代码='zxcv'的产品
如果我做:
ProductGroup.find({'products.code' : 'zxcv'},function(err, products){})
Run Code Online (Sandbox Code Playgroud)
我得到了所有第一个产品类别 - 而不仅仅是代码为''zxcv'的产品
我想到了.由于我花了几个小时寻找答案而找不到答案,也许这会帮助另一个有相同问题的菜鸟:
要获得匹配的产品:
ProductGroup.find({'products.code' : 'zxcv'},'products.code.$.items', function(err, products){})
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1612 次 |
| 最近记录: |