2012-01-31 6 views
1

私はTwilio(またはサードパーティのAPI)をRailsプロジェクトに統合しています。私は私のGemfileにbundlelerによってロードされた宝石を手に入れました。私はに私のapiキーを保存するように設定しました。Rails 3のイディオムサービスの初期化/ヘルパー?

新しいTwilioクライアントをインスタンス化するには、そのYAMLファイルを解析し、現在のRails.envの設定が何であれロードする必要があります。私はそれをラップしたいclient = Twilio::REST::Client.new(MyApp::Application.config.twilio['sid'], MyApp::Application.config.twilio['auth'])

:私はちょうど私がTwilioクライアントを必要とするとき今、私は冗長に直面していconfig/initializers/twilio.rb

MyApp::Application.config.twilioに設定をプッシュしたたびに、そのファイルを解析軽減するために、どこかのヘルパーで、システムのさまざまな部分から簡単にアクセスできます。そのヘルパーを定義する慣用的な場所はありますか?

答えて

2

これはあなたのために働く可能性があります

class MyApp::Application 
    def self.twilio_client 
    Twilio::REST::Client.new(config.twilio['sid'], config.twilio['auth']) 
    end 
end 

私は通常MyCompany::TwilioIntegration.clientを含むサードパーティの統合に必要なすべてを、定義し、lib/my_company/twilio_integration.rbでそのようなものを定義します。

おそらく、より良い場所はapp/models/twilio_integration.rbになります。これは、定義できる可能性がありますTwilioIntegration.client

関連する問題