回送app.models.ModelName未定义

时间:2018-07-24 14:40:56

标签: node.js loopbackjs loopback

下面的代码正在从另一个模型访问一个模型,该模型返回未定义

var app = require('../../server/server');
module.exports = function(Regions) {
    const Media = app.models.Media;
    console.log( Media) // Returns Undefined
}

我也在下面尝试过,但是同样的错误

module.exports = function(Regions) {
     console.log( Regions.app.models.Media) // Returns Undefined
}

3 个答案:

答案 0 :(得分:1)

您是否尝试过像这样访问模型:

require('loopback').getModel('Regions')

答案 1 :(得分:0)

这是方法:

module.exports = function (Region) {
  let app
  
  Region.beforeRemote('find', function (ctx, unused, next) {
    // Do something
    next()
  })
  
  Region.on('attached', function (a) {
    app = a
  })
}

如果要在启动时跨模型执行操作,也可以创建启动脚本:

答案 2 :(得分:0)

您的示例代码是否正确位于 common / models / regions.js 中?

以下是您的一些摘要:

'use strict';

var app = require('../../server/server');
var models = app.models;
var Media;
app.on('started', function () {
    Media = models.Media;
});

module.exports = function (Regions) {

    ...

}