【发布时间】:2015-10-27 20:26:18
【问题描述】:
考虑一个包含类似文档的集合(下面提到了虚拟值):
{
id: "001",
company: "abc",
empDet: [
{
disableFlag: true,
name: 'raj',
age: 45,
designation: 'clerk'
},
{
disableFlag: false,
name: 'ramya',
age: 35,
designation: 'manager'
},
{
disableFlag: false,
name: 'gabriel',
age: 41,
designation: 'asstManager'
},
{
disableFlag: true,
name: 'saran',
age: 55,
designation: 'attender'
},
{
disableFlag: true,
name: 'buela',
age: 25,
designation: 'cashier'
}
],
location: "delhi"
},
{
id: "002",
company: "xyz",
empDet: [
{
disableFlag: true,
name: 'ravi',
age: 45,
designation: 'consultant'
},
{
disableFlag: true,
name: 'reka',
age: 35,
designation: 'manager'
},
{
disableFlag: false,
name: 'geetha',
age: 41,
designation: 'asstManager'
},
{
disableFlag: false,
name: 'varun',
age: 55,
designation: 'attender'
},
{
disableFlag: true,
name: 'balu',
age: 25,
designation: 'clerk'
}
],
location: "mumbai"
},
{
id: "003",
company: "pqr",
empDet: [
{
disableFlag: true,
name: 'bobby',
age: 45,
designation: 'consultant'
},
{
disableFlag: true,
name: 'vinay',
age: 35,
designation: 'manager'
},
{
disableFlag: true,
name: 'faritha',
age: 41,
designation: 'asstManager'
},
{
disableFlag: false,
name: 'arun',
age: 55,
designation: 'attender'
},
{
disableFlag: true,
name: 'kayal',
age: 25,
designation: 'clerk'
},
],
location: "calcutta"
}
使用 node.js 和猫鼬,我想检索 xyz 公司详细信息,但 "empDet" 的值应该只有包含 disableFlag 的值为 true。例如,我期望的输出应该是:
{
id: "002",
company: "xyz",
empDet: [
{
disableFlag: true,
name: 'ravi',
age: 45,
designation: 'consultant'
},
{
disableFlag: true,
name: 'reka',
age: 35,
designation: 'manager'
},
{
disableFlag: true,
name: 'balu',
age: 25,
designation: 'clerk'
}
],
location: "mumbai"
}
如何通过使用 node.js 和 mongoose 消除具有某些标志为 false 的数组对象值来查找或检索集合中的文档?
【问题讨论】:
-
你应该为你的模型添加一个新属性,或者你在这个状态下检查查询结果。