ノードとmongojsモジュールを使用して埋め込みドキュメントを単独で取得する方法を知りたいと思います。ここに参照のための私のコードの一部です:ノード
//Gets by ID
router.get('storm/:id',function(req,res,next){
db.storms.findOne({_id:mongojs.ObjectId(req.params.id)},function(err,storm){
if (err){
res.send(err);
}
else {
res.json(storm);
}
});
});
あり、私は、オブジェクトIDによって取得することができ、しかし、私は何をしたいID以外のプロパティで埋め込みオブジェクトを取得することです。ここで
は参照用のコレクションです:
{
"_id":"585761e497a4739e937fad8d",
"user":"lloyd",
"timestamp":"14:20",
"storm":
[
{"message":"This is a test message number 7. I love making test messages.","stormtime":"14:21"},
{"message":"This is a test message number 8. I love making test messages.","stormtime":"14:22"},
{"message":"This is a test message number 9. I love making test messages.","stormtime":"14:23"}
]
}
は、私は以下のコードを試してみましたが、それは動作しません。私は上記のURLのようにプロパティにアクセスできるようにしたい。
//Get messages in storm
router.get('storm/:stormtime',function(req,res,next){
db.storms.find({"storm.stormtime":"14:23"},{"storm.$":1},function(err,storm){
if (err){
res.send(err);
}
else {
res.json(storm);
}
});
});
この問題を解決するために、特に私のクエリではどうすればよいと思いますか?