在 Rails Ruby 中动态填充 .yml 文件

Populate .yml file dynamically in Ruby on Rails

我想在加载服务器时动态填充 config 文件夹中的 .yml 文件。

下面是我的.yml文件的例子

# Configuration Credentials

development: &development
  user: "***"
  password: "***" 

test:
  <<: *development

non-prod:
  user: "***"
  password: "***" 

production: &production
  user: "***"
  password: "***"  

我想以嵌入式 ruby 的形式为每个键设置值,如下所示:

development: &development
  user: <%= get_value_for(user)  %>
  password: <%= get_value_for(password)  %>

我想在服务器即将运行时加载.yml文件。

我想知道我应该在哪里定义 get_value_for 方法,以便我可以在我的 yml 文件中调用它? (可能在 application.rb 但我不知道具体如何)

创建自定义 class 并定义其方法。然后要求config/application.rb

里面的class
# app/global/database_details.rb
class DatabaseDetails

  def self.get_value_for(user)
  end
end

里面config/application.rb

require_relative '../app/global/database_details'

module AppName
  class Application < Rails::Application

  end
end

里面config/database.yml

development: &development
  user: <%= DatabaseDetails.get_value_for(user)  %>
  password: <%= DatabaseDetails.get_value_for(password)  %>