【发布时间】:2017-02-02 01:56:34
【问题描述】:
假设我有一个集合People,其中包含以下文档:
{
"name": "John",
"age": 25,
"gender": "male"
}
还有两个用于文档的 Schema,一个应该返回所有信息,另一个应该只返回信息的子集:
var Person = mongoose.Schema({ "name": String, "age": Number, "gender": String}, {collection: "People");
var PersonName = mongoose.Schema({ "name": String }, {collection: "People"});
如何让PersonName 只返回姓名?
目前,我有一个包含很多不必要信息的文档,并且希望在使用 .find() 时只返回数据的子集。我已经定义了一个模式并手动设置它的集合。与定义的Schema相反,它返回所有字段。
【问题讨论】:
-
您对此有什么答案吗?我已经在我的 RefSchema 中手动设置了“select:false”的模式。但是有些模式太大而无法手动完成。如果字段发生更改,将需要维护 2 个或更多架构。
标签: node.js mongodb mongoose find schema