【问题标题】:Run rake task from outside RAILS_ROOT从 RAILS_ROOT 外部运行 rake 任务
【发布时间】:2009-07-30 13:18:41
【问题描述】:

我的 RAILS_ROOT 是 /usr/local/www/application/

如果我从 RAILS_ROOT 中运行“rake db:migrate RAILS_ENV=production”,它可以正常工作。

但是我似乎找不到从 RAILS_ROOT 外部运行相同命令的方法。

【问题讨论】:

    标签: ruby-on-rails rake task


    【解决方案1】:

    试试:

    rake -f $RAILS_ROOT/Rakefile db:migrate RAILS_ENV=production
    # Assuming you set the environment variable. 
    # Else, just replace $RAILS_ROOT by actual value
    

    【讨论】:

      【解决方案2】:

      我认为您需要重新考虑您的问题。在不指定 rakefile 的情况下运行 rake 时,它将在当前目录中搜索所述 rakefile。在 RAILS_ROOT 以外的目录中,它会找不到 rakefile 或错误的 Rakefile

      rake -rakefile /usr/local/www/application/Rakefile db:migrate RAILS_ENV=production 可能有效(假设the rake user guide 是正确的),但您可能必须在目录中进行设计不佳的插件/库修改。

      【讨论】:

        【解决方案3】:

        试试

        cd /user/local/www/application && rake db:migrate RAILS_ENV=production
        

        【讨论】:

          猜你喜欢
          • 2010-10-09
          • 2012-11-15
          • 2019-05-31
          • 2014-12-05
          • 1970-01-01
          • 2011-07-27
          • 2013-03-11
          • 2010-09-23
          • 2013-02-18
          相关资源
          最近更新 更多