使用sails.js v0.10 rc8,我的应用程序与mysql数据库有1个连接,我希望给定的模型从另一个数据库中获取数据。
有可能吗?如果是的话,如何实现这一目标?
由于
答案 0 :(得分:10)
是的,您可以定义多个连接并将每个模型设置为使用不同的连接。请参阅documentation on connections进行全面审核。
您可以在 config / connections.js 文件中根据需要设置任意数量的连接。您甚至可以使用同一个适配器设置多个连接:
module.exports.connections = {
// A MySQL connection
mysql1: {
adapter: 'sails-mysql',
user: 'root',
host: 'localhost',
database: 'database1'
},
// Another MySQL connection, same server, different database
mysql2: {
adapter: 'sails-mysql',
user: 'root',
host: 'localhost',
database: 'database2'
},
// A Postgresql connection
postgres: {
adapter: 'sails-postgresql',
user: 'postgres',
host: 'localhost',
database: 'mypsqldb'
}
};
然后在模型类文件中,指定用于该模型的连接:
module.exports = {
connection: 'mysql1',
attributes: {...}
}
要指定模型的默认连接,请在 config / models.js 中设置:
module.export.models = {
connection: 'mysql2'
};