我有一个共同的Mixin脚本/ mixin / log.js文件
module.exports = function (Model, options) {
var app = Model.app;
Model.observe('after save', function (ctx, next) {
// Log CREATE/UPDATE operations on every model
next();
});
};
我的server / model.config.json文件是
{
"_meta": {
"sources": [
"loopback/common/models",
"loopback/server/models",
"../common/models",
"./models"
],
"mixins": [
"loopback/common/mixins",
"loopback/server/mixins",
"../common/mixins",
"./mixins"
]
}
}
我有模型common / models / class.js和相关的json文件是common / model / class.json
{
"name": "class",
...
"mixins": {
"Log": true
},
...
}
当我尝试任何CREATED / UPDATE操作
时Model.observe('after save', function (ctx, next)
工作正常,但我也想在用户模型(内置用户模型)CREATED / UPDATE操作上调用此函数,但它没有工作,虽然我将以下行添加到node_modules / loopback / common / models / user.json
"mixins": {
"Log": true
}
任何人都知道我的实现中的问题在哪里?
答案 0 :(得分:1)
<强>解强>
内置模型在这方面有点不同,因为它们没有完全参与环回启动加载周期。请创建一个文件:server / boot / user.js并尝试类似:
module.exports = function(app) {
var User = app.models.User;
User.mixin('Log');
};