Sails 使用 Waterline 作为其 ORM,而 Waterline 具有允许使用多个数据存储的适配器的概念。对于您创建的每个模型,您可以定义一个 adapter 属性。因此,例如,如果您想创建一个使用 mysql 作为其数据存储的 User 模型,它看起来像这样。
在 api/models/User.js 中
module.exports = {
adapter: 'mysql',
attributes: {
name: 'string',
email: 'string',
phoneNumber: {
type: 'string',
defaultsTo: '555-555-5555'
}
}
};
您还可以将另一个模型(例如 Office)与不同的数据存储区(例如 mongoDB)关联。
在 api/models/Office.js
module.exports = {
adapter: 'mongo',
attributes: {
address: 'string',
city: 'string',
state: 'string'
}
};
您唯一需要确保的是您已在项目中安装了 sails-mysql 和 sails-mongo 适配器并进行了配置。您可以使用 npm 安装适配器。
npm install sails-mysql sails-mongo --save
您可以在adapter configuration 的sails 文档中了解更多如何配置数据库。
对于您的特定用例,目前还没有 Oracle 适配器。如果您有兴趣开始该项目,这里有一些docs 和boilerplate 可以开始制作sails 适配器。当前可用的适配器列表可以在here找到。