【发布时间】:2013-01-03 20:44:01
【问题描述】:
所以我试图让delayed_jobs 从站点地图gem 运行我的站点地图:刷新命令。不知道为什么它没有出现在我当地的 rake 工作中:工作。如果我在终端中运行 sitemap:refresh ,它运行良好,delayed_jobs 运行我所有的其他 rake 任务。
在 sitemap_refresh.rb 中
require 'sitemap_generator/tasks'
require 'delayed_job'
require 'delayed/tasks'
module Sitemap
class Refresh
def perform
`rake sitemap:refresh`
end
end
end
在我的 rakefile 中调用这个:
task :sitemap => :environment do
load 'sitemap_refresh.rb'
puts "Refreshing Sitemap"
Delayed::Job.enqueue Sitemap::Refresh.new
puts "Sitemap has been refreshed"
结束
我还尝试用 system "sitemap:refresh" 替换 rake sitemap:refresh
【问题讨论】:
标签: rake sitemap delayed-job