Rails凭证在初始化器中不起作用的任何原因?

时间:2018-11-03 19:02:30

标签: ruby-on-rails-5

我有什么理由不能使用

pedEscalator

 Rails.application.credentials[Rails.env.to_sym]['amazon']['client_id']

目前,我得到了:

config/initializers/omniauth.rb

1 个答案:

答案 0 :(得分:1)

这些[]通话中的任何一个都可能是罪魁祸首。

可能Rails.application.credentials为零。

可能Rails.application.credentials[Rails.env.to_sym]为零。

可能Rails.application.credentials[Rails.env.to_sym]['amazon']为零。

这应该足够容易地测试它是哪一个。

我猜这是因为使用amazon作为字符串而不是符号。如果您的config/credentials.yml.enc如下所示...

production:
  amazon:
    client_id: 12345

然后尝试使用符号键。虽然这可能是访问无关的哈希。

Rails.application.credentials[Rails.env.to_sym][:amazon][:client_id]