【发布时间】:2023-03-31 16:27:01
【问题描述】:
我正在尝试通过 Mongoose/Node.js/Express 在 MongoDB 文档中进行更改时实现创建记录 (Update) 的方法。我是 Node.js 的新手,所以我想知道最好的方法是什么。
我想记录是这样的:
update: {
before: { ... },
after: { ... },
created_at: Date,
};
我知道可以设置一个pre 函数,该函数在调用另一个方法时被调用,例如save.
Entry.pre('save', function(next) {
// create an Update record
next();
});
问题是,我不确定如何确定 save 操作中发生了哪些更改,因此很难创建更新值列表。
谁能想到一个干净的方法来做到这一点?
【问题讨论】:
-
如果您想在更新文档时保留每次更改的版本,请考虑使用 couchdb 代替每次更新的版本
-
我不知道 CouchDB 有这个功能。在这一点上切换到 CouchDB 可能是一个巨大的变化,但如果它消除了版本控制和回滚的头痛,也许它是值得的。
-
您可能想看看[此问答][1] [1]:stackoverflow.com/questions/7370833/…