Заполнить файл .yml динамически в Ruby on Rails - PullRequest
0 голосов
/ 27 июня 2018

Я хочу, чтобы мой файл .yml динамически заполнялся в папке config при загрузке моего сервера.

Ниже приведен пример моего файла .yml

# Configuration Credentials

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

test:
  <<: *development

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

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

Я хочу установить значение для каждого ключа в виде встроенного рубина следующим образом:

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

Я хочу загрузить файл .yml, когда сервер собирается работать.

Я хочу знать, где я должен определить метод get_value_for, чтобы я мог вызывать его внутри своего файла yml? (вероятно, в application.rb, но я не знаю, как именно)

1 Ответ

0 голосов
/ 27 июня 2018

Создайте пользовательский класс и определите метод их. Тогда требуй класс внутри config/application.rb

# 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)  %>
...