Sails JS - 动态连接MySQL数据库

时间:2015-08-20 23:17:12

标签: mysql database node.js sails.js

我的想法是在我的主机上安装多个数据库,每个用户一个。在前端,有一个登录表单,其中用户输入是数据库的名称。

我们说我的用户名是JOHN,因此我正在使用的数据库将命名为" DB_JOHN"。我希望我的后端获取用户名并将其连接到" DB _"字符串,所以我可以进行动态连接。怎么会这样?

config / connections.js 中,您可以默认找到此代码:

someMysqlServer: {
    adapter: 'sails-mysql',
    host: 'YOUR_MYSQL_SERVER_HOSTNAME_OR_IP_ADDRESS',
    user: 'YOUR_MYSQL_USER',
    password: 'YOUR_MYSQL_PASSWORD',
    database: 'YOUR_MYSQL_DB'
  },

如何从获取所有这些属性的控制器设置数据库,用户和密码属性?

1 个答案:

答案 0 :(得分:0)

在您的控制器中,您必须打开连接。虽然您通常会传递someMysqlServer,但现在您必须根据req对象动态创建一个。

这里有一些你可以在控制器中使用的模拟代码。

var connOpts = {
    adapter: 'sails-mysql',
    host: 'YOUR_MYSQL_SERVER_HOSTNAME_OR_IP_ADDRESS',
    user: req.body.user,
    password: req.body.password,
    database: req.body.database
};

mysql(connOpts, function(err, conn) {

});
相关问题