似乎无法在这里找到任何确定的内容。当我'部署'我的应用程序时,我正在推送我的文件。但是,数据库未迁移。如果我手动转到/ myapp / current并运行'rake db:migrate'(我应该这样做吗?)它会创建db / development.sqlite,这会让我相信我的环境设置为dev。我尝试在我的delopy.rb文件中设置set:deploy_env,“production”和set:rails_env,“production”,没有任何更改。任何帮助表示赞赏。
PS 如果我可以将迁移添加为部署的一部分,而不是必须手动执行它,那将会很好。
答案 0 :(得分:2)
假设capistrano 2.x尝试cap deploy:migrations
部署和迁移数据库。
您还可以使用cap deploy:migrate
在最近部署的应用程序中运行迁移。
请查看capistrano wiki了解更多详情:https://github.com/capistrano/capistrano/wiki/Capistrano-Tasks
答案 1 :(得分:1)
使用cap db:migrate
以使用Capistrano运行迁移。就环境而言,Multistage Extension可能真的很有帮助。
答案 2 :(得分:0)
也许你的Capfile中缺少require 'capistrano/rails/migrations'
?