0
mongoose/mongodbのオブジェクトの配列から一致するオブジェクトを返したいと思いますが、正しいとは思えません。オブジェクト配列の子をmongooseに返します
items: {
left: { type: Number, default: 0 },
total: { type: Number, default: 0 },
each: [{
name: String
}]
}
この独自のオブジェクトIDを取得するためにeach
内の各オブジェクトを作る:
私のスキーマは、現在、次のようになります。今私はこれをmongooseで照会しようとしています。私は$in
と$elemMatch
と普通の.find({ items.each._id: req.params.id })
の両方を試しました。
より具体的な
Project.findOne({ 'items.each': { $elemMatch: { _id: req.params.id } } }).exec()
私はこのようなオブジェクトを返すようにしたい:
{
_id: ObjectId(23426456234),
name: "My name is"
}
しかし、なぜ私はこれを取得することはできませんか?
あなたが点検しましたq.params.id'はオブジェクトIDまたは文字列ですか? 'each'オブジェクトがデータベースに正しく保存されていることを確認してください。 – andresk