0
我正在嘗試查找與node.js中的自定義字段匹配的所有文檔。如何使用MongoDB查找與自定義字段相匹配的文檔?
的Node.js代碼:
req.app.db.models.Property.find({
user: {
id: req.params.id
}
}).exec(function(err, user) {
if (err) {
return next(err);
}
console.log("id:" + req.params.id);
console.log("user:" + user);
res.status(200).json(user);
});
但是,控制檯這樣表示
id:5941cfc42df14b2fe811d531
user:
和架構是類似下面
user: {
id: { type: mongoose.Schema.Types.ObjectId, ref: 'User' },
name: { type: String, default: '' },
email: { type: String, defaul: ''}
},
propertyType: { type: String, default: '' },
..........
}
它似乎可以」找到文件。 這有什麼問題? Property Collection上有幾個文件。
'.find({「user.id」:req.params.id})'。使用'{「user」:{「id」:req.params.id}}'正在尋找除「id」屬性之外的「用戶」鍵下沒有「其他」的文檔。這當然是不正確的,因爲它與模式不一致。請參閱核心文檔中的[「點符號」](https://docs.mongodb.com/manual/core/document/#embedded-documents)。 –
嗨尼爾。我剛剛用.find({「user.id」:req.params.id})檢出了它,現在它正在工作。你能提供它作爲答案嗎? –