Använd punktnotation
för att nå inuti de inbäddade array-dokumenten. Till exempel för att fråga efter Post
kommentarer med en created_at
mellan date1
och date2
:
Post.find({ "comments.created_at": { $gt: date1, $lt: date2 }}, function (err, docs) {
...
});
UPPDATERA
Tack för redigeringen; nu förstår jag att du försöker filtrera kommentarerna i enstaka inlägg efter deras created_at
datum. Du kan inte göra det direkt med MongoDB-frågor, men jag tror att du kan göra det med 2.2-aggregationsramverket om du har den versionen. Ta en titt på diskussionen om denna funktionsbegäran
på Jira för exempel.