我遇到了一些麻烦-尝试使用findOne返回嵌套数组
具有这样的模型
{
_id: ObjectId,
name: String,
studies: []
}
有人可以告诉我为什么未指定猫鼬findOne返回_id字段吗?
module.exports.getStudies = function( id, callback ) {
const query = {
'_id': id
};
User.findOne( query, 'studies', callback );
}
这将返回
{
"studies": [1,2,3],
"_id": "5a9ccf7deccccc36d88b36ac"
}
当我期望
[1,2,3]
我为这个问题的突然发音表示歉意-我只是在这片刻之际,无法做出正面或反面的结论。
答案 0 :(得分:1)
_id
始终默认返回,您必须将其从查询中排除。
module.exports.getStudies = function( id, callback ) {
const query = {
'_id': id
};
User.findOne( query, { studies: 1, _id: 0 }, callback );
}