猫鼬-预先验证不适用于updateOne

时间:2020-05-09 07:19:41

标签: node.js mongodb mongoose

我有以下代码可以更新一些数据:

const update = {};

if (dateStart) {
  update.dateStart = dateStart;
}

if (dateEnd) {
  update.dateEnd = dateEnd;
}

await StatsBoard.updateOne(
  {
    id,
    type,
    user: req.user.id
  },
  update,
  { runValidators: true }
);

我需要进行一些自定义验证,所以我添加了一个预验证钩子:

StatsBoardSchema.pre('validate', function (next) {
  console.log('VALIDATE');
  next();
});

但是,即使我在{ runValidators: true }中正确设置了updateOne,我也永远不会输入预验证钩子。有解决办法吗?

0 个答案:

没有答案