我已经设置了sailsjs项目并尝试使用sails-rabbitmq适配器访问rabbitmq。我跟着https://www.npmjs.com/package/sails-rabbitmq。 我想和rabbitmq一起使用mongodb。问题是当我航行升降机时我收到这个错误。
错误:挂钩(
orm
)无法加载!
错误:错误:您的某个模型(message
)指的是多个数据存储区。 请将其配置的数据存储区设置为字符串,而不是其模型定义中的数组(.connection
)或应用程序范围的默认值(sails.config.models.connection
)
(这通常在您的config/models.js
文件中设置,或者作为应用程序的特定于环境的配置的一部分设置。at constructError (C:\Users\demoapp\AppData\Roaming\npm\node_modules\sails\node_modules\sails-hook-orm\lib\construct-error.js:57:13) at validateModelDef (C:\Users\demoapp\AppData\Roaming\npm\node_modules\sails\node_modules\sails-hook-orm\lib\validate-model-def.js:97:11) at C:\Users\demoapp\AppData\Roaming\npm\node_modules\sails\node_modules\sails-hook-orm\lib\initialize.js:218:36 at arrayEach (C:\Users\demoapp\AppData\Roaming\npm\node_modules\sails\node_modules\lodash\index.js:1289:13) at Function.<anonymous> (C:\Users\demoapp\AppData\Roaming\npm\node_modules\sails\node_modules\lodash\index.js:3345:13) at Array.async.auto._normalizeModelDefs (C:\Users\demoapp\AppData\Roaming\npm\node_modules\sails\node_modules\sails-hook-orm\lib\initialize.js:216:11) at listener (C:\Users\demoapp\AppData\Roaming\npm\node_modules\sails\node_modules\sails-hook-orm\node_modules\async\lib\async.js:605:42) at C:\Users\demoapp\AppData\Roaming\npm\node_modules\sails\node_modules\sails-hook-orm\node_modules\async\lib\async.js:544:17 at _arrayEach (C:\Users\demoapp\AppData\Roaming\npm\node_modules\sails\node_modules\sails-hook-orm\node_modules\async\lib\async.js:85:13) at Immediate.taskComplete (C:\Users\demoapp\AppData\Roaming\npm\node_modules\sails\node_modules\sails-hook-orm\node_modules\async\lib\async.js:543:13) at processImmediate [as _immediateCallback] (timers.js:383:17)
我有&gt; connection: [ 'rabbitCluster', 'regularMongo' ]
在我的消息模型中。 regularMongo是mongodb连接。请告诉我我缺少的其他配置。
答案 0 :(得分:0)
使用以下配置我没有看到任何错误。在sails.config.models
设置
module.exports.models = {
connection: 'someMongodbServer',
migrate: 'safe'
};
在Message.js
集
module.exports = {
connection: [ 'rabbitCluster', 'someMongodbServer' ],
routingKey: [ 'parentMessage' ],
attributes: {
title: 'string',
body: 'string',
parentMessage: {
model: 'message'
}
}
};