1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00

Clarify two ways to set Rails configuration options

[ci skip]
This commit is contained in:
Jon Moss 2016-08-26 10:24:38 -04:00
parent 01dca5b4b3
commit 2f5a40a800

View file

@ -1217,12 +1217,16 @@ NOTE. If you are running in a multi-threaded environment, there could be a chanc
Custom configuration
--------------------
You can configure your own code through the Rails configuration object with custom configuration under the `config.x` property. It works like this:
You can configure your own code through the Rails configuration object with
custom configuration under either the `config.x` namespace, or `config` directly.
The key difference between these two is that you should be using `config.x` if you
are defining _nested_ configuration (ex: `config.x.nested.nested.hi`), and just
`config` for _single level_ configuration (ex: `config.hello`).
```ruby
config.x.payment_processing.schedule = :daily
config.x.payment_processing.retries = 3
config.x.super_debugger = true
config.super_debugger = true
```
These configuration points are then available through the configuration object:
@ -1230,11 +1234,10 @@ These configuration points are then available through the configuration object:
```ruby
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
Rails.configuration.x.payment_processing.not_set # => nil
Rails.configuration.super_debugger # => true
```
You can also use `Rails::Application.config_for` to load whole configuration files:
```ruby