Ruby on rails Rails时钟系统未运行代码
我正在Rails 3.2应用程序中使用gem“时钟”。该应用程序正在Heroku上运行。时钟作业在凌晨1点运行-但它没有执行代码 这是clock.rb代码:Ruby on rails Rails时钟系统未运行代码,ruby-on-rails,ruby,heroku,ruby-on-rails-3.2,clockwork,Ruby On Rails,Ruby,Heroku,Ruby On Rails 3.2,Clockwork,我正在Rails 3.2应用程序中使用gem“时钟”。该应用程序正在Heroku上运行。时钟作业在凌晨1点运行-但它没有执行代码 这是clock.rb代码: Clockwork.every(1.day, 'DailyJob', :at => '01:00'){ StatsMailer.stats_email.deliver Forecast.where(:run_date => Date.today).each do |forecast| wosch
Clockwork.every(1.day, 'DailyJob', :at => '01:00'){
StatsMailer.stats_email.deliver
Forecast.where(:run_date => Date.today).each do |forecast|
woschedules_run_jobplans_path(:id => forecast.woschedule_id)
end
}
日志显示:
9月4日00:00:05 ndeavor登台应用程序/时钟。1:#错误在于路线不存在。由于路由确实存在,此问题通常意味着Rails路由尚未加载到当前范围 为了使Rails正常运行,您可能需要包含Rails的路由帮助程序:
Rails.application.routes.url\u helpers
Clockwork.every(1.day, 'DailyJob', :at => '01:00'){
StatsMailer.stats_email.deliver
Forecast.where(:run_date => Date.today).each do |forecast|
# Prepend your route with the following:
Rails.application.routes.url_helpers.woschedules_run_jobplans_path(:id => forecast.woschedule_id)
end
}
或者,要使其干燥一点,您可以使用以下命令在文件开头包含所有路由帮助程序:
# Beginning of file
include Rails.application.routes.url_helpers
# ...
# Beginning of file
include Rails.application.routes.url_helpers
# ...