如何在不在每个方法中声明该模型的情况下访问另一个模型内的环回​​模型

How to access loopback model inside another model without having declare that model in each method

我了解如何在 Model1 中获取 Model2 的引用,我的问题是您能否在模块级别而不是方法级别执行此操作。

示例:

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

module.exports = function (user) {
  user.method1 = function (id, role, next) {
  var Role = app.models.role;
  }
}

上面的工作正常但是如果我有 method2 和 method3 也需要访问 Role 除了声明 var Role = app.models.role; 之外还有其他选择吗?在每个方法中

怎么样:

module.exports = function (user) {
  var app;
  var Role;

  user.on('attached', function setupApp(receivedApp) {
    app = receivedApp;
    Role = app.models.role;
  });

  user.method1 = function (id, role, next) {
    // use Role here
  }
}