2011-01-25 95 views
4

我想在生產中的rails 3上運行一些thor任務,但我不知道如何設置它。 下面的代碼沒有工作在Rails生產環境中運行Thor

class CheckData < Thor 
    require File.expand_path('config/environment.rb') 
end 
+1

你是否有錯誤?如果是,比它是什麼? – 2011-01-25 05:57:43

+0

好,那麼環境就是development.i不知道如何改變生產。我的目標是通過thor任務處理生產數據庫。 – raykin 2011-01-26 01:26:52

回答

6

設置RAILS_ENV環境變量來「生產」正上方的require說法應該工作。如果環境變量未提前設置,我在此處使用條件賦值來將環境默認爲「生產」。

class CheckData < Thor 
    ENV['RAILS_ENV'] ||= 'production' 
    require File.expand_path('config/environment.rb') 
end 

如果你正在運行它作爲命令行雷神任務,那麼你可以在運行前設置環境變量,從而覆蓋默認分配:從

export RAILS_ENV=test; thor check_data 

見配置Rails應用程序Rails Environment SettingsRailsGuides瞭解更多環境變量。

相關問題