一些關於mongoose中的mongo ObjectId的問題Mongoose.js:是否可以更改ObjectId的名稱?
1)可以通過命名而不是_id來獲得ObjectId字段嗎?以及如何做到這一點?當我在我的代碼做:
MySchema = new mongoose.Schema({
id : mongoose.Schema.ObjectId
});
它改變不了什麼。
2)如果我有ObjectID字段名爲_id是有可能從請求返回另一個名稱此字段(例如只是「ID」 - 發送它在網絡中的響應);
3)和公正的理解的問題:爲什麼是的ObjectId _id領域通過「ID」屬性不是「_id」訪問?
謝謝,亞歷克斯
看到這個問題的一個方面,你問: http://stackoverflow.com/q/10363513/1259510 – JohnnyHK
謝謝,但似乎虛擬屬性does'n解決問題,當我使用.find方法ID不會返回vitruals,應該嗎?我相信「所有者:mongoose.Schema.ObjectId」 - 是爲了關係。 _id不能改變。你我感興趣的是有可能使用貓鼬在查詢結果中用id替換id。 – WHITECOLOR
是的,虛擬屬性確實出現在從'.find'返回的模型實例上;這是他們背後的全部想法。每個MongoDB文檔都必須具有'_id'屬性,但ObjectId屬性也可以用於其他內容 - 通常作爲對另一個集合中文檔的引用。 – JohnnyHK