猫鼬如何动态更改字段?

时间:2019-02-08 17:10:48

标签: mongodb mongoose

我必须先使用findById(),然后再使用save(),因为我用于slug生成mongoose-url-slugs的两个插件和收集历史记录{{3 }}。这两个插件在数据更新方面有限制,如果我使用findOneAndUpdatefindByIdAndUpdate,第一个插件不会更新数据块,而如果使用findByIdAndUpdate,则第二个插件不能工作,但是与findOneAndUpdate合作。 现在我要做的是:首先findById,然后进行更改,然后save,但这是一个问题,我的文档中有很多字段需要更改,所以不可能让我在更改期间像user.f1 = 'something', user.f2 = 'something else', and so on一样写出每个。所以我想找到一种使用方法和具有键值对的对象。像这样:

User.findById(id).exec(function (err, user) {
  if (err) {

  } else {
    user = {...fieldsForUpdate, ...user};
    user.save();
  }
});

0 个答案:

没有答案