Ruby on rails 缩短对Rails.application.secrets的调用以提高可读性

Ruby on rails 缩短对Rails.application.secrets的调用以提高可读性,ruby-on-rails,security,ruby-on-rails-4,readability,Ruby On Rails,Security,Ruby On Rails 4,Readability,我知道这有点吹毛求疵,但当我尝试使用新的[ish]config/secrets.yml文件时,这一点整天都在盯着我。这只会让我的代码变得丑陋。我知道,如果有人试图理解我的项目,那么转向不那么标准的东西可能会是一个问题。。。但是这个项目是非常私人的,我是唯一一个在做它的人 它似乎是ActiveSupport::OrderedOptions的一个实例,所以我似乎不能alias它 如何将SECRET之类的东西别名为Rails.application.secrets,以便调用SECRET.some\u

我知道这有点吹毛求疵,但当我尝试使用新的[ish]
config/secrets.yml
文件时,这一点整天都在盯着我。这只会让我的代码变得丑陋。我知道,如果有人试图理解我的项目,那么转向不那么标准的东西可能会是一个问题。。。但是这个项目是非常私人的,我是唯一一个在做它的人

它似乎是
ActiveSupport::OrderedOptions
的一个实例,所以我似乎不能
alias

如何将
SECRET
之类的东西别名为
Rails.application.secrets
,以便调用
SECRET.some\u key
获取返回值

我正在寻找一种解决方案:

  • 对性能的影响最小
  • 对安全性的影响最小甚至为零

非常感谢

为什么不把
Rails.application.secrets
分配到
SECRET
@SECRET
某个地方呢

SECRET = Rails.application.secrets 

在控制台中为我工作;然后我可以访问
SECRET.SECRET\u key\u base

如果您不喜欢
SECRET
常量的美观,可以使用另一种方式:

module Secret
  def self.for
    Rails.application.secrets
  end
end
将缩短

Rails.application.secrets.my_value
致:


为什么不把
Rails.application.secrets
分配到
SECRET
@SECRET
的某个地方呢
SECRET=Rails.application.secrets
在控制台中为我工作;然后我可以访问
SECRET.SECRET\u key\u base
等等。哇!我真的没想到会这么简单。我想补充一点,我只是把它放在我的
config/application.rb
文件中,以便在整个项目中访问它。如果你不介意将其作为答案提交,我很乐意为你的答案打分。尽管如此,如果有我没有想到的潜在安全隐患,我还是想听听其他人的意见。谢谢
Secret.for.my_value