Loopback:在模型钩子中获取模型更改
问题描述:
在模型PUT上,我需要根据其原始值进行自定义验证。 在beforeUpdate模型钩子里面,我可以通过'this'关键字访问'next'函数,'request body'对象(如beforeUpdate参数)并更新模型本身。Loopback:在模型钩子中获取模型更改
有没有办法得到原始模型或其变化,而不从数据库中查询它?
它甚至有可能更新模型钩子内的当前模型(因为更改'this'属性不生效)?
答
声明:我是一个LoopBack开发人员。
有没有办法得到原始模型或其变化,而不从数据库查询它?
不,这是不可能的。
看一看的updateAttributes()
在loopback-datasource-juggler/lib/dao.js的代码,这被称为当你请求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这样的请求标头? PLease在这里看到的问题 http://*.com/questions/26927791/access-request-headers-from-beforesave-model-hook – 2014-11-17 05:12:58