在rails3中存储/检索API密钥的最佳做法是什么?
我应该创建自己的应用程序yaml并通过那里访问它吗?如果是这样,怎么样?
对于noob问题抱歉...
答案 0 :(得分:10)
我使用settingslogic插件来做这样的事情。非常容易使用。
将settingslogic添加到Gemfile
和bundle install
:
gem 'settingslogic'
为您的设置创建一个目录,并将settingslogic yaml放在那里:
/my_app/config/settings/my_settings.yml
您可以包含默认设置和每个环境设置。该文件如下所示:
defaults: &defaults
api_key: abc123
development:
<<: *defaults
test:
<<: *defaults
production:
<<: *defaults
添加此文件:app/models/my_settings.rb
,启动您的应用,您就可以了
class MySettings < Settingslogic
source "#{Rails.root}/config/settings/my_settings.yml"
namespace Rails.env
end
现在您可以在应用中的任何位置使用这些设置,如下所示:
MySettings.api_key