schedule.rb中的配置文件与Rails每当gem?

时间:2010-03-28 21:24:28

标签: ruby-on-rails configuration cron whenever

我的rails应用程序的/ config文件夹中有一个名为config.yml的文件。 我还有一个初始化程序:config / initializers / load_config.rb,代码如下:

APP_CONFIG = YAML.load_file("#{RAILS_ROOT}/config/config.yml")

我正在使用Whenever gem设置一个cron作业,并希望使用我的APP_CONFIG来调用这样的函数:

#inside schedule.rb
every 2.hours do
  runner "MyModel.someMethod('#{APP_CONFIG['some_value']}')"
end

但是当我打电话时,Whenever gem似乎无法识别配置文件

 whenever --update-crontab mysite

如何将我的配置中的值合并到schedule.rb文件中(而不是对值进行硬编码)?

谢谢!

1 个答案:

答案 0 :(得分:3)

修改您的schedule.rb文件,将require 'yaml'语句添加到顶部。然后添加初始化程序中的行:

APP_CONFIG = YAML.load_file("#{RAILS_ROOT}/config/config.yml")

另外,您可以直接要求load_config.rb文件。你应该好好去。