2010-11-12 20 views

Trả lời

10

Tôi sử dụng plugin settingslogic cho những thứ như thế này. Rất dễ sử dụng.

Thêm settingslogic để Gemfile của bạn và bundle install:

gem 'settingslogic' 

Tạo một thư mục cho các thiết lập của bạn và đặt yaml settingslogic trong đó:

/my_app/config/settings/my_settings.yml 

Bạn có thể bao gồm các thiết lập mặc định và mỗi thiết lập môi trường. Các tập tin trông như thế này:

defaults: &defaults 
    api_key: abc123 

development: 
    <<: *defaults 

test: 
    <<: *defaults 

production: 
    <<: *defaults 

Thêm tập tin này: app/models/my_settings.rb, khởi động ứng dụng của bạn và bạn tốt để đi

class MySettings < Settingslogic 
    source "#{Rails.root}/config/settings/my_settings.yml" 
    namespace Rails.env 
end 

Bây giờ bạn có thể sử dụng gọi các thiết lập này từ bất cứ nơi nào trong ứng dụng như vậy :

MySettings.api_key 
+0

Tuyệt vời, cảm ơn rất nhiều vì lời khuyên! – kayluhb

+0

Tôi quyết định tạo một gem tương tự như settingslogic, nhưng không cần thêm lớp MySettings. Thông tin thêm tại đây: http://www.cowboycoded.com/2011/04/08/application-wide-variables-for-your-rails-3-app-using-yettings/ – johnmcaliley

+0

Thật tuyệt vời, cảm ơn! Tôi có thể sẽ sử dụng nó với dự án tiếp theo của mình. – kayluhb

Các vấn đề liên quan