可以挂钩beforeUpdate / afterUpdate修改值吗?

问题描述 投票:0回答:1

我有模型调用“点”,我想在每个动作更新点更新字段“更新”。所以,我使用hook boforeUpdate来修改更新的新Date()。结果回调是真的,更新的fied是一个新的日期时间。但是没有在db上更新,该字段仍然是旧日期时间。我的代码:

var app = require('../../../server.js'),
point = app.models.point;

point.beforeUpdate = function(next) {
  var app = this;
  app.updated = new Date();
  next();
}
strongloop loopbackjs
1个回答
1
投票

beforeUpdate回调有两个参数:回调(在你的例子中是next)和一个对象(你的点实例)

var app = require('../../../server.js'),
point = app.models.point;

point.beforeUpdate = function(next, pt) {
  pt.updated = new Date();
  next();
}

假设您的代码位于app/models/point.js,它可以简化为:

module.exports = function(Point) {
  Point.beforeUpdate = function(next, point) {
    point.updated = new Date();
    next();
  }
};
© www.soinside.com 2019 - 2024. All rights reserved.