Я пытаюсь мягко удалить элементы, используя следующий код Mongoose:
// Remove a client
exports.delete = (req, res) => {
logger.info(`Removing Client ${req.params.clientId}`);
Client.findByIdAndUpdate(
{ _id: req.params.clientId },
{ active: false },
{ new: true }
)
.then(client => {
logger.info('client: ', client);
if (!client) {
return res.sendStatus(404);
}
res.sendStatus(204);
})
.catch(err => {
logger.error(err);
res.status(422).send(err.errors);
});
};
Но по какой-то причине флаг active
просто не хочет устанавливать значение false
.Журнал показывает, что передается clientId, а код then
содержит данные клиента, но флаг active
по-прежнему установлен на true
.Нужно ли как-то сбрасывать или фиксировать?
Правка - Добавление схемы
export const ClientSchema = new Schema(
{
name: {
type: String,
trim: true,
index: true,
unique: true,
required: true,
}
},
{ collection: 'clients' }
);