可以在没有'heroku run console'的情况下在Heroku上运行单个Rails命令吗?

时间:2012-10-01 18:37:54

标签: ruby-on-rails heroku

我经常需要在Heroku上运行命令“Rails.cache.clear”,我发现这样做的唯一方法是首先运行“heroku run console”,然后运行命令。有没有办法一步到位?

3 个答案:

答案 0 :(得分:10)

这似乎有效:

echo "Rails.cache.clear; exit" | heroku run console

没有出口,似乎因某种原因而挂起,至少对我而言。

答案 1 :(得分:8)

我认为这就是你要找的东西:

heroku run rails runner -e production Rails.cache.clear

如果您没有设置环境,将使用开发。

如果这是清除缓存等常见任务,请执行rake任务。

答案 2 :(得分:4)

使用该命令创建rake任务。例如文件lib / tasks / cache.rake

namespace :cache do
  desc 'Clear memcache'
  task :clear => :environment do
    Rails.cache.clear
  end
end

然后你可以运行命令

heroku run rake cache:clear