2010-03-28 59 views
2

我在我的rails應用程序的/ config文件夾中有一個名爲config.yml的文件。 我也有一個初始化:配置/初始化/ load_config.rb用下面的代碼:配置文件在schedule.rb與Rails每當寶石?

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

我現在用的是每當創業板設立一個cron作業,並想用我的APP_CONFIG調用一個函數像這樣:

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

但只要創業板似乎並沒有認識到配置文件時,我打電話

whenever --update-crontab mysite 

我如何可以將值從我configuratio n在我的schedule.rb文件中(而不是硬編碼值)?

謝謝!

回答

3

編輯您的schedule.rb文件以在頂部添加require 'yaml'語句。然後從初始添加一行:

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

Altenatively,你可能只需要直接在load_config.rb文件。你應該很好去。

+0

aha!所以在load_config.rb時,初始化程序不會被加載?謝謝!我會給它一個 – 2010-03-29 16:07:35

+0

像一個魅力工作!當我需要load_config.rb時,不需要'require'yaml'。謝謝,約翰,你總是很有幫助! – 2010-03-29 16:11:54

+0

不客氣。我很高興它的工作! – 2010-03-29 19:00:23