Я не уверен, как сделать название этого вопроса более понятным:)
Итак, позвольте мне перейти непосредственно к схеме:
const UserSchema = new Schema({
name: String,
_events: [{ type: Schema.Types.ObjectId, ref: "Event" }]
});
Обычно пользователь может иметь несколько событий, на которые ссылается другая модель, Событие. Коллекция событий выглядит так:
const EventSchema = new Schema({
_userId: { type: Schema.Types.ObjectId, ref: "User" },
eventDate: { type: Date, required: true },
instructions: String,
});
Я делаю запрос на Mongoose, который перечисляет все события, созданные пользователем, следующим образом:
app.get("/api/events/", requireAuth, async (req, res, next) => {
try {
const userEvents = await User.findById(req.user._id)
.populate({
path: "_events",
model: "Event",
})
.select({ _events: 1 })
.exec();
res.send(userEvents);
} catch (err) {
next(err);
}
});
Это отлично работает. Однако я заинтересован в перечислении только будущих событий. Как я могу изменить запрос для выполнения условия, где eventDate
> текущая дата?