2012-12-31 32 views
0

我有這樣的模式:獲得不同級別的貓鼬與多個用戶

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 } 
       }] 
      }], 
    }); 

我知道如何設置,例如,圖像的作者,但我不知道怎麼查詢的時間指定的圖像。

而且,如果我想搜索多個用戶的圖像,我如何按時間順序顯示這些圖像,作爲Twitter的時間線。我使用EJS作爲模板,並在服務器端使用Express.js,我該如何做圖像時間線?我甚至不知道如何訪問指定的圖像日期,所以,我真的是貓鼬的初學者。

+0

我認爲你必須使用聚合框架來''展開'imagen'數組,然後'$ sort'並使用'$ match'對其進行過濾。 – JohnnyHK

回答

0

你存儲日期與「時間」的組成部分,所以如果你想爲你設置了整整一天的時間間隔特定日期檢索數據:

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);