我在一个更大的 MongoDB 文档中得到了这个 JSON 片段:
formConfig: {
person: {},
title: {name: 'title', ... },
name: {name: 'name', ...}
}
但是,当我尝试检索包含此 JSON 的文档时,它根本不会返回 person: {}
。我得到的只是:
formConfig: {
title: {name: 'title', ... },
name: {name: 'name', ...}
}
这完全破坏了前端的功能,因为我需要知道 person
在那里,无论它是否为空。
当我搜索此问题时,我找不到任何类似的问题或资源来解释为什么会出现这种情况,更不用说如何解决它了。
那么我该如何修复它,以便它也返回 person
?
这是实际的查询,appConfig
包含如上所述的 JSON:
exports.getSingle = (req, res, next) => {
AppConfig.findOne({_id: req.params.id})
.exec((err, appConfig) => {
res.json({
error: null,
data: appConfig
});
}
);
};
最佳答案
问题实际上是在 Schema
级别,不在 Schema
选项中使用 minimize: false
会导致空对象被删除。
这有效:
new Schema ({...}, {minimize: false});
关于node.js - MongoDB 不返回文档中的空对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49150940/