【问题标题】:check weather the sailsjs project is running on live server or on local server检查sailsjs项目在实时服务器或本地服务器上运行的天气
【发布时间】:2014-06-23 10:24:23
【问题描述】:

我正在做一个项目,我在节点中使用sailjs。我通过创建一个名为“config_db”的文件在 config 文件夹中创建了我的数据库,我的 config_db 中的代码是

var Sequelize = require('sequelize');

//var sequelize = new Sequelize('databaseNameofLive', 'UserName', 'dbPasswordofLive', {
//    host:"us-cdbr-east-05.cleardb.net",

var sequelize = new Sequelize('DatabaseName', 'UserName', '', {
      host:"localhost",
      dialect: "mysql", // or 'sqlite', 'postgres', 'mariadb'
      port:    3306, // or 5432 (for postgres)
 });

module.exports = {  

    dbase: sequelize

};

现在每次我需要完成一项任务时,我都会将其拉到本地 PC 上,将数据库连接更改为本地并处理它,然后将其更改回实时数据库并再次上传,我需要一些方法来让应用程序本身检查天气它在本地或实时运行并自动连接该数据库,

喜欢它检查并知道这次它在本地运行它将连接到以下数据库字符串

  var sequelize = new Sequelize('DatabaseName', 'UserName', '', {
          host:"localhost",
          dialect: "mysql", // or 'sqlite', 'postgres', 'mariadb'
          port:    3306, // or 5432 (for postgres)
     });

否则它会去

var sequelize = new Sequelize('databaseNameofLive', 'UserName', 'dbPasswordofLive', {
          host:"us-cdbr-east-05.cleardb.net",

我在 NODE 中使用sailsjs 创建这个应用程序,请告诉我我该怎么做。我正在为我的数据库使用 mySQL。

【问题讨论】:

    标签: mysql node.js sails.js


    【解决方案1】:

    只需使用 Node ENV-Variable:

    if(process.env.NODE_ENV != "production"){
      var sequelize = new Sequelize('DatabaseName', 'UserName', '', {
          host:"localhost",
          dialect: "mysql", // or 'sqlite', 'postgres', 'mariadb'
          port:    3306, // or 5432 (for postgres)
     });
    }else{
       var sequelize = new Sequelize('databaseNameofLive', 'UserName', 'dbPasswordofLive', {
          host:"us-cdbr-east-05.cleardb.net",....
    }
    

    请确保您在实时服务器上正确设置了 NODE_ENV!

    顺便说一句。为什么你使用 Squelinze? Sails 带有 Waterline(也是 ORM)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-03-28
      • 1970-01-01
      • 2017-04-27
      • 2017-06-27
      • 2018-07-19
      • 1970-01-01
      • 2014-12-04
      • 1970-01-01
      相关资源
      最近更新 更多