ruby-on-rails – 如何在config / initializer中使用YML值
发布时间:2020-12-16 19:16:48 所属栏目:百科 来源:网络整理
导读:我正在努力将facebook整合到我的应用中.要做到这一点,我正在使用考拉,设计和omniauth. 对于考拉,我有 /config/facebook.ymldevelopment: app_id: 123123132123 secret_key: dasadsasd1231231test: app_id: 313131313 secret_key: das132asdads12132productio
我正在努力将facebook整合到我的应用中.要做到这一点,我正在使用考拉,设计和omniauth.
对于考拉,我有 /config/facebook.yml development: app_id: 123123132123 secret_key: dasadsasd1231231 test: app_id: 313131313 secret_key: das132asdads12132 production: app_id: dasdsadsadsadsa secret_key: adsdsa12das123fds21 然后我也有了omniauth: /config/initalizers/omniauth.rb Rails.application.config.middleware.use OmniAuth::Builder do provider :facebook,123123132123,'dasadsasd1231231' end 这里的问题是我在两个位置都重复了相同的值.我该如何干这个,以便app_id和secret_key只存在于一个地方,一个文件引用另一个? 解决方法
这样做有一个很棒的Railscast:
http://railscasts.com/episodes/85-yaml-configuration-file
在omniauth.rb中,您可以添加以下行: FACEBOOK_CONFIG = YAML.load_file("#{RAILS_ROOT}/config/facebook.yml")[RAILS_ENV] 然后你可以这样做: Rails.application.config.middleware.use OmniAuth::Builder do provider :facebook,FACEBOOK_CONFIG['app_id'],FACEBOOK_CONFIG['secret_key'] end (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |