我对如何在Rails 4.2中正确使用figaro感到困惑。所以在application.yml(检入.gitignore)中,我有这个:
secret_key_base: 123456
然后在secrets.yml中,我有这个:
development:
secret_key_base: <%= ENV["SECRET_KEY_BASE"] %>
根据我读过的所有内容,宝石应该处理设置凭证的ENV部分。为什么这不起作用?
编辑1:
在application.yml中,我有:mandrill_user_name: email@example.com
和mandrill_password: 1234567890
在development.rb中我有:
config.action_mailer.default_url_options = { :host => "localhost:3000" }
config.action_mailer.smtp_settings = {
address: "smtp.mandrillapp.com",
port: 587,
domain: "localhost:3000",
authentication: "plain",
enable_starttls_auto: true,
user_name: ENV["mandrill_user_name"],
password: ENV["mandrill_password"]
}
不应该是application.yml正在处理这个问题吗?
答案 0 :(得分:1)
如果在secrets.yml文件和application.yml文件中有变量是多余的。 的即。仅使用application.yml文件来声明ENV Vars。
只要它在apllication.yml文件中,你就可以像你一样在整个rails应用程序中调用它:
ENV["SECRET_KEY_BASE"]
存储在secrets.yml文件中的变量通过
调用Rails.application.secrets.SECRET_KEY_BASE