【问题标题】:config file in schedule.rb with Rails Whenever gem?在 schedule.rb 中使用 Rails 每当 gem 配置文件?
【发布时间】:2011-02-01 20:09:40
【问题描述】:

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

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

我正在使用 Each 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 文件中(而不是对值进行硬编码)?

谢谢!

【问题讨论】:

    标签: ruby-on-rails configuration cron whenever


    【解决方案1】:

    编辑您的schedule.rb 文件以在顶部添加require 'yaml' 语句。然后从您的初始化程序中添加该行:

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

    或者,您可能只需要 load_config.rb 文件直接。那你应该可以走了。

    【讨论】:

    • 啊哈!所以当 load_config.rb 加载时初始化程序不会加载?谢谢!我试试看
    • 工作就像一个魅力!当我需要 load_config.rb 时不需要require 'yaml'。谢谢,约翰,你总是那么乐于助人!
    猜你喜欢
    • 2013-02-19
    • 2011-12-20
    • 2013-03-28
    • 1970-01-01
    • 2016-03-01
    • 2017-04-26
    • 1970-01-01
    • 2011-06-03
    • 1970-01-01
    相关资源
    最近更新 更多