如何在Sails中访问控制器之外的模型

我正在使用Sails v11。

我有一个模型,每个租户(它是一个多租户应用程序),这是根据控制器内部的逻辑来决定租户采取行动,我试图创build一个“tenantID”/“模型”这个。 我能够在控制器内部做到这一点,但是因为我不想为每个动作创build一个hashMap,所以我试图在configuration文件中创build这个映射,并且打算导出它在控制器中使用。

但是我无法访问控制器之外的模型来创build这个散列表。

我在这个链接上find了这个讨论。

但是,build议的方法不起作用。

var map = new Map(); map.set('item1', Foo) module.exports.modelMap = { productMap: map; } 

我收到这些语法错误。

 map.set('item1', Foo) --> ReferenceError: Foo is not defined map.set('item1', sails.models.Foo) --> ReferenceError: sails is not defined map.set('item1', sails.models['Foo']) --> ReferenceError: sails is not defined 

使模型名称小写,产生相同的错误。

 firstuser@ubuntu:~/project-dir$ npm --version sails 2.14.7 firstuser@ubuntu:~/project-dir$ sails --version 0.11.2 firstuser@ubuntu:~/project-dir$ 

你能否build议正确的方式访问版本0.11控制器之外的模型。

Sails的模型默认是全局的。 要在代码中访问Foo(在控制器之外),可以使用sails全局variables 。 您可以在config / globals.js文件中更改此行为。

 sails.models.model 

在Foo的情况下:

 sails.models.foo; //note the lowercase