Loopbackjs 环回:在模型挂钩内获取模型更改

Loopbackjs 环回:在模型挂钩内获取模型更改,loopbackjs,strongloop,Loopbackjs,Strongloop,对于模型PUT,我需要根据其原始值进行自定义验证。 在beforeUpdate模型钩子中,我可以访问“next”函数、“RequestBody”对象(作为beforeUpdate参数)并通过“this”关键字更新模型本身 是否有任何方法可以在不从数据库查询的情况下获取原始模型或其更改 甚至可以在模型挂钩内更新当前模型吗(因为更改“this”属性不会生效)?免责声明:我是环回开发人员 是否有任何方法可以在不从数据库查询的情况下获取原始模型或其更改 不,那是不可能的 查看中的updateAttrib

对于模型PUT,我需要根据其原始值进行自定义验证。 在beforeUpdate模型钩子中,我可以访问“next”函数、“RequestBody”对象(作为beforeUpdate参数)并通过“this”关键字更新模型本身

是否有任何方法可以在不从数据库查询的情况下获取原始模型或其更改

甚至可以在模型挂钩内更新当前模型吗(因为更改“this”属性不会生效)?

免责声明:我是环回开发人员

是否有任何方法可以在不从数据库查询的情况下获取原始模型或其更改

不,那是不可能的

查看中的
updateAttributes()
代码,当您向
PUT/models/:id
发出请求时会调用该代码:

inst.setAttributes(data);

inst.isValid(function (valid) {
  if (!valid) {
    if (cb) {
      cb(new ValidationError(inst), inst);
    }
  } else {
    inst.trigger('save', function (saveDone) {
      inst.trigger('update', function (done) {
        // etc.

在执行任何挂钩之前,都会更新模型。

一个问题。是否有任何方法可以通过模型挂钩访问请求头,如accesstoken或userID?请看这里的问题