Rails 凭据在初始值设定项中不起作用的任何原因?



我不能使用有什么原因吗

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

在中

config/initializers/omniauth.rb

目前,当我这样做时,我得到:

config/initializers/omniauth.rb:2:in `<main>': undefined method `[]' for nil:NilClass (NoMethodError)

任何一个[]调用都可能是罪魁祸首。

可能是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]

最新更新