«DeleteMany» Mongoose не работает, возвращая «неопределенное» сообщение об ошибке с запросом даты - PullRequest
0 голосов
/ 07 июля 2019

Возможно, резюме

В конечной точке GET в моем REST APi Express / Mongoose (MongoDB) я пытаюсь удалить документы в модели, которую я считаю "устаревшей"с моим условием запроса.Это приводит к возникновению исключения в try / catch конечной точки, хотя консоль показывает только «undefined».При проверке MongoDB Atlas тестовый документ не удаляется.

Что я пробовал

Я перешел на «deleteOne», и это не сработалолибо.

Модель

var EventSchema = new mongoose.Schema({
    title: {
        type: String,
        required: true
    },
    description: String,
    course: {
        type: String,
        required: true
    },
    group: {
        type: mongoose.Schema.Types.ObjectId,
        ref: 'group',
        required: true
    },
    location: {
        lat: {
            type: Number,
            required: true
        },
        lng: {
            type: Number,
            required: true
        }
    },
    date: {
        type: Date,
        required: true
    }
})

var Event = mongoose.model('event', EventSchema);

Конечная точка

router.get('/new/:course', auth, async (req, res) => {
    try {
        // Delete all events that already happened
        await Event.deleteMany({ date: { $lte: Date.now }});

        // Get all the events in the course
        const events = await Event.find({ course: req.params.course });

        // Return the new events
        res.json(events);

    } catch (err) {
        console.error(err.messsage);
        res.status(500).send('Server error');
    }
});

Ожидаемая

Существующий документ, который должен быть возвращен из запроса, и документ, который нужно удалить.

Результаты

«Ошибка сервера» возвращается (изcatch block) и консоль вошла в систему как неопределенная.Документ не удален.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...