2014-03-25 44 views
5

有人请给我一些完整的nodejs迁移的例子,因为实际的文档本身并没有给出完整的例子来说明如何完成。在heroku中sequelize迁移

或者可能给出一个可以使用的其他模块的完整示例,以及如何在heroku中使用的最佳实践?

感谢

回答

16

当你在本地初始化sequelize运行:

sequelize -i 

迁移文件夹,config文件夹和配置文件夹内config.json创建。该json文件是您设置应用程序环境的地方。这是一个config.json文件的例子。

{ 
    "development": { 
    "username": "postgres", 
    "password": "password", 
    "database": "dbname", 
    "host": "100.0.0.0", 
    "dialect":"postgres", 
    "protocol":"postgres", 
    "port":"xxxx" 
}, 
    "staging": { 
    "username": "dbusername", 
    "password": "dbpassword", 
    "database": "db", 
    "host": "host", 
    "dialect":"postgres", 
    "protocol":"postgres", 
    "port":"xxxx" 
    }, 
    "production": { 
    "username": "dbusername", 
    "password": "dbpassword", 
    "database": "db", 
    "host": "dbhost", 
    "dialect":"postgres", 
    "protocol":"postgres", 
    "port":"xxxx" 
    } 
} 

生产对象是您设置您的heroku生产应用程序数据库变量的位置。您可以通过在命令行中运行以下命令来访问它们:

heroku config --app production-app-name 

所有变量都将在您设置的database_url config var中。

当你准备运行迁移,你在命令行中运行,那么一切就是:

heroku run sequelize db:migrate --env production -m --app production-app-name. 

--env将是你想迁移为准数据库对象config.json。

而是在文件中嵌入密码,用这个方便sequelize能力:

"production": { 
    "use_env_variable": "DATABASE_URL" 
}