自定義配置

config/目錄中建立 YAML 檔案,例如:config/neo4j.yml

neo4j.yml 的內容可以如下所示(為簡單起見,default 用於所有環境):

default: &default
  host: localhost
  port: 7474
  username: neo4j
  password: root

development:
  <<: *default

test:
  <<: *default

production:
  <<: *default

config/application.rb

module MyApp
  class Application < Rails::Application
    config.neo4j = config_for(:neo4j)
  end
end

現在,你可以訪問自定義配置,如下所示:

Rails.configuration.neo4j['host']
 #=> localhost
Rails.configuration.neo4j['port']
 #=> 7474

更多資訊

Rails 官方 API 文件將 config_for 方法描述為:

方便載入當前 Rails 環境的 config / foo.yml。

如果你不想使用 yaml 檔案

你可以使用 config.x 屬性下的自定義配置通過 Rails 配置物件配置自己的程式碼。

config.x.payment_processing.schedule = :daily
config.x.payment_processing.retries  = 3
config.x.super_debugger = true

然後,可以通過配置物件獲得這些配置點:

Rails.configuration.x.payment_processing.schedule # => :daily
Rails.configuration.x.payment_processing.retries  # => 3
Rails.configuration.x.super_debugger              # => true
Rails.configuration.x.super_debugger.not_set      # => nil