gpt4 book ai didi

ruby-on-rails - 如何在配置/初始化器中使用 YML 值

转载 作者:行者123 更新时间:2023-11-30 05:19:06 29 4
gpt4 key购买 nike

我正在努力将 Facebook 集成到我的应用程序中。为此,我使用了 koala、devise 和 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

关于ruby-on-rails - 如何在配置/初始化器中使用 YML 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5906357/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com