1
比方說,我有一個集合People
具有以下文檔中:有沒有辦法只返回在Mongoose模式中定義的字段?
{
"name": "John",
"age": 25,
"gender": "male"
}
和兩個架構的文檔,一個應該返回的所有信息,而另一個只能返回的信息的子集:
var Person = mongoose.Schema({ "name": String, "age": Number, "gender": String}, {collection: "People");
var PersonName = mongoose.Schema({ "name": String }, {collection: "People"});
如何獲得PersonName
只返回名字?
目前,我有一個包含大量不必要信息的文檔,並且希望在使用.find()
時僅返回一部分數據。我已經定義了一個模式並手動設置了它的集合。違背定義的模式,它返回所有字段。
這會工作,但那裏只是還從架構拉的方式,因爲我的架構已經嵌套領域,是不是我提供的例子更復雜一點。 –
你可以在投影選項中選擇嵌套對象,如'{「name.firstName」:1}'。然而,你應該提供有問題的實際問題,那麼我們可以提供完美的解決方案,否則你期望完美的解決方案。:) –
它不是一個好主意定義多個模式來從模式中獲取一些字段。 (我的想法) –