0

我有一个简单的问题。我在部署时的应用程序不是从rake db:migrate生产环境开始的。我没有创建deploy.rb我已经准备好了。deploy.rb正在工作,但命令'deploy:migrate'不起作用。我不知道,问这个问题有多正确。但我认为这个问题与:role. 也许rake db:migrate需要描述?像这样:

namespace :db do

  desc "Rake migration"
    task :migrate, :roles => :db do
      run "cd #{current_path} && #{rake} RAILS_ENV=production db:migrate"
    end
  end

end
4

1 回答 1

1

我不确定我是否理解了你的问题......

已经有一个deploy:migrate任务定义为 capistrano 的一部分,您只需在其中添加一个钩子,deploy.rb它就会运行。有关执行此操作的详细信息,请参阅此答案

您不需要上面定义的代码,但如果您这样做,请注意您没有定义deploy:migrate您正在定义db:migrate.

于 2012-06-26T13:42:34.537 回答