Moment.js: найдите посты, где кто-то прокомментировал сегодня - PullRequest
0 голосов
/ 02 января 2019

Я довольно новичок с moment.js.У меня есть страница уведомлений, и при загрузке я хотел бы показать свои сообщения, где кто-то прокомментировал.Я только хочу видеть посты, где кто-то прокомментировал сегодня.Может кто-нибудь сказать, где я ошибся?

У меня есть следующий код:

Я хочу показать все посты, где комментарии были размещены в начале дня.Затем я хочу преобразовать эту дату во время UTC, поскольку документ комментария mongoDB также был сохранен во времени UTC.

// Generate the actual time
    const todayForEvent = moment().startOf('day')
      .utc().format();

    console.log('todayForEvent', todayForEvent);

    const posts = await Post.find({
        // From this user...
        $and: [
          // Find normal posts that has comments (recent interactions)
          { _posted_by: userId },
          { comments: { $exists: true, $ne: [] } },
          { 'comments.created_date': { $gte: todayForEvent } }
        ]

    })
console.log(posts);

так я могу сохранить дату комментария с помощью Mongoose.,Я хочу сохранить его в формате UTC

const CommentSchema = new Schema({

  created_date: {
    type: Date,
    default: moment.utc().format()
  }

});

const Comment = mongoose.model('Comment', CommentSchema);

module.exports = Comment;

Я сделал два console.logs и добавлю снимок экрана с документом базы данных

console.log(todayForEvent) возвращает 2019-01-02T06:00:00Z

console.log(posts) возвращает пустой массив, поэтому совпадений не найдено

Снимок экрана базы данных: как видно ниже, формат2019-01-02 12: 26: 23.000

enter image description here

...