【发布时间】:2014-08-19 02:25:00
【问题描述】:
我正在尝试使用 mysql 作为我的数据库,但我不知道如何让我的 config/adapters.js 使用 config/local.js 中的 mysql 信息进行连接。存储连接信息以便sails-mysql可以连接的正确方法是什么?
【问题讨论】:
我正在尝试使用 mysql 作为我的数据库,但我不知道如何让我的 config/adapters.js 使用 config/local.js 中的 mysql 信息进行连接。存储连接信息以便sails-mysql可以连接的正确方法是什么?
【问题讨论】:
config/local.js 合并在所有其他配置之上。所以你可以把你自己的adapters 键放在那里:
{
adapters: {
default: 'myLocalAdapter',
myLocalAdapter: {
module: 'sails-mysql',
host: 'localhost',
user: 'root',
password: 'password',
database: 'database'
}
}
}
它会被 Sails 拾取并使用。
编辑 在sails v0.10.x 中,使用密钥connections 而不是adapters,因为两者现在已区分,并且连接现在保存身份验证信息。最初的答案是针对早期版本的风帆。
【讨论】:
connections 而不是 adapters,不是吗?
connections,并将 config/models.js 文件中的默认连接设置为 connection 键。
截至最新版本的sails(即0.12),在编写此答案时,没有Adapters.js。连接列表在config/connections.js 中指定,用于所有模型的默认连接在config/models.js 下指定。因此,通过这种更改来覆盖本地数据库配置的方式在config.local.js 中指定如下。
module.exports = {
connections: {
localMongoServer: {
adapter: 'sails-mongo',
host: 'localhost',
port: 27017,
user: 'YOUR_DB_USER',
password: 'YOUR_DB_PASSWORD',
database: 'YOUR_DB_NAME'
}
},
models: {
connection: 'localMongoServer'
}
}
注意:在接受的答案中,仅将 adapters 更改为 connections 是行不通的,因为在 connections 下没有 default 属性.
【讨论】: