Acceso a diferentes niveles en Mongoose con múltiples usuarios

Tengo este modelo:

var userschema = new mongoose.Schema({
  user: String,
  imagen: [{ 
              title: String,
              author: String,
              index: Number,
              date: { type: Date, default: Date.now },
              comments: [{
                         user: String,
                         body: String,
                         date: { type: Date, default: Date.now }
                 }]
           }],
  });

Sé cómo configurar, por ejemplo, el autor de la imagen, pero no sé cómo buscar la fecha de una imagen específica.

Y, si quiero buscar las imágenes de varios usuarios, ¿cómo puedo mostrar esas imágenes en orden cronológico, como la línea de tiempo de Twitter? Uso EJS como plantilla y Express.js en el lado del servidor, ¿cómo puedo hacer esa línea de tiempo de imagen? Ni siquiera sé cómo acceder a una fecha de imagen específica, así que soy un principiante con la mangosta.

preguntado el 31 de diciembre de 12 a las 16:12

Creo que tendrás que usar el marco de agregación para $unwind el imagen matriz y luego $sort y filtrarlo con $match. -

1 Respuestas

Está almacenando fechas con el componente "hora", por lo que si desea recuperar datos para un día específico, debe establecer un intervalo para todo el día:

var query = userschema.find( 
{"imagen.date": {"$gte": new Date(2013, 1, 7), "$lt": new Date(2013, 1, 8)}});

query.sort({"imagen.date":1}).exec(callback);

Respondido el 08 de enero de 13 a las 14:01

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.