在单个控制器MEAN.IO中使用多个模型

时间:2015-04-28 22:37:47

标签: angularjs node.js mongodb express mean.io

对于平均堆栈,我是一个新手。我生成了一个包ModelA。我还生成了ModelB。我现在尝试在ModelA控制器中引用2个模型。例如

Model / ModelA.js

PFRole *role = [PFRole roleWithName:@"Administrator" acl:roleACL];
[role saveInBackground];

Model / ModelB.js

var ModelA = new Schema({  
    name: String  
});

mongoose.model('ModelA', ModelA);

package / contoller / ModelA.js

var ModelB = new Schema({  
   name: String  
});

mongoose.model('ModelB', ModelB);

我一直收到MissingSchemaError:Schema还没有注册模型' ModelB'。我想我的问题是如何在控制器/ ModelA中引用modelB?

1 个答案:

答案 0 :(得分:1)

您可能需要以下内容:

型号/ ModelA.js

module.exports = mongoose.model('ModelA', ModelA);

然后在任何其他文件中:

var ModelA = require('./path/to/Model/ModelA.js');
ModelA.find({}); // etc.

module.exports会在另一个文件中require d时返回其值。然后,当您需要实例/对象时,您可以将require分配给var并对其执行操作。在这种情况下,ModelA是一个Mongoose Model对象,可以在任何包含它的地方使用。