Create a YAML
file in the config/
directory, for example: config/neo4j.yml
The content of neo4j.yml
can be something like the below (for simplicity, default
is used for all environments):
default: &default
host: localhost
port: 7474
username: neo4j
password: root
development:
<<: *default
test:
<<: *default
production:
<<: *default
in config/application.rb
:
module MyApp
class Application < Rails::Application
config.neo4j = config_for(:neo4j)
end
end
Now, your custom config is accessible like below:
Rails.configuration.neo4j['host']
#=> localhost
Rails.configuration.neo4j['port']
#=> 7474
More info
Rails official API document describes the config_for
method as:
Convenience for loading config/foo.yml for the current Rails env.
If you do not want to use a yaml
file
You can configure your own code through the Rails configuration object with custom configuration under the config.x
property.
Example
config.x.payment_processing.schedule = :daily
config.x.payment_processing.retries = 3
config.x.super_debugger = true
These configuration points are then available through the configuration object:
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