Consulta aninhada do mangusto aninhada em maior ou menor data
Como faço para consultar comentários maiores ou menores que uma determinada data ...
Aqui está o meu esquema com o modelo Post e um modelo de comentário:
var mongoose = require('mongoose');
var should = require('should');
mongoose.connect("localhost","test_db");
var CommentSchema = new mongoose.Schema({
content: {type:String},
created_at: {type:Date, default:Date.now}
});
var PostSchema = new mongoose.Schema({
title: {type:String},
content: {type:String},
comments: [CommentSchema]
});
var Post = mongoose.model('Post',PostSchema);
var Comment = mongoose.model('Comment',CommentSchema);
var post = new Post({title:"hello world",comments:[{content:"1st comment"},{content:"2nd comment"}]});
// I saved it! and then I query for it
var id = "5045d5be48af9f040f000002";
Post.find({ _id:id,
"comments.created_at":{ $gte:(new Date())}
},function(err,result){
console.log(result);
});
Preciso de ajuda para consultar os documentos incorporados ...
Ok eu editei meu código para dar mais detalhes.
Isso retorna um array vazio. Então, o que eu quero ou o que eu esperaria é um Post com um array de comentários vazio. Mas com essa consulta eu não recebo nenhuma postagem. (quando eu troco $ gte com $ lte eu recebo (obviamente) o post com seus 2 comentários).
Mas, novamente, como posso filtrar os detalhes de acordo com a minha descrição acima?