【发布时间】:2019-07-26 05:39:08
【问题描述】:
在我的 MongoDB/Node 后端中,我使用 Mongoose 中间件(前/后挂钩)以便在文档的某些方面发生变化时生成注释。一切都按预期工作——除了一件。我需要知道对记录进行更改的最后一个人的 _id - 以便可以将其包含在生成的注释中。
现在,如果可以将此值保存到文档上的属性中,那就相当简单了。我只是将该值分配给“lastModifiedBy”之类的属性。但是,这个项目的方向不允许这样做。
那么,我想知道我是否可以使用虚拟属性来做到这一点?我很清楚如何从文档中存在的数据生成虚拟属性,如下所示:
personSchema.virtual('name.full').get(function () {
return this.name.first + ' ' + this.name.last;
});
但是,如果值不是从文档模型中已有的数据中解析出来的,这将如何工作?
并且,澄清一下,在我更新记录的函数中,我确实可以访问这个值。但是如何通过pre-save 挂钩将该值传递给我的触发器文件?这就是我正在努力解决的问题。如果可能的话,对它如何工作的基本演示会有所帮助。或者,如果有其他方法可以实现这一点,我也会对此持开放态度。
【问题讨论】:
标签: mongoose