查找今天之后的日期[Express + mongoose]

时间:2018-02-26 18:58:41

标签: node.js express web mongoose

我构建一个按时间顺序列出事件的Web应用程序,我只想列出特定日期的未来事件,但是我的mongoose查询会继续返回并清空对象。如果我查询所有事件,我的代码工作正常,但是当我添加过滤器时,它总是返回一个空对象。

我的模特:

//**Client**
    #include <QTcpSocket>

    int main(int argc, char *argv[])
    {
        QApplication a(argc, argv);

        QTcpSocket client;

        client.connectToHost(???);    

        return a.exec();
    }

我的路线

const EventSchema = new Schema({
name: {
    type: String,
    required: true
},
description: {
    type: String,
    required: true
},
address: {
    type: String,
    required: true
},
date: {
    type: Date,
    required: true
},

start: {
    type: String,
    required: true
},
end: {
    type: String,
    required: true
},
url: {
    type: String,
    required: true
},
phone: {
    type: String,
    required: true
},
email: {
    type: String,
    required: true
},
img: {
    type: String,
    default: "noimage.jpg"
} });

mongodb示例对象(这不是唯一的一个)

app.get('/events', (req, res) => {
Event.find({ date: { $gte: new Date(2018, 01, 01) } }).exec(function(err, events) {
    console.log(events)
    events.forEach(function(event) {
        const month = event.date.getMonth() + 1;
        const day = event.date.getDate();
        const year = event.date.getYear();
        event.formatDate = month + '/' + day + '/' + year;
    });
    res.render('events', {
        events: events,
    })
}) });

1 个答案:

答案 0 :(得分:0)

所以我的问题的答案就是如何将我的日期保存到mongodb。 它们需要采用以下格式:

“date”:{         “$ date”:“2017-10-30T00:00:00.000Z”     },