mirror of
https://github.com/jbranchaud/til
synced 2026-01-02 22:58:01 +00:00
Add Read In Environment-Specific Config Values as a Rails til
This commit is contained in:
@@ -9,7 +9,7 @@ and pairing with smart people at Hashrocket.
|
||||
|
||||
For a steady stream of TILs, [sign up for my newsletter](https://tinyletter.com/jbranchaud).
|
||||
|
||||
_956 TILs and counting..._
|
||||
_957 TILs and counting..._
|
||||
|
||||
---
|
||||
|
||||
@@ -608,6 +608,7 @@ _956 TILs and counting..._
|
||||
- [Polymorphic Path Helpers](rails/polymorphic-path-helpers.md)
|
||||
- [Pretend Generations](rails/pretend-generations.md)
|
||||
- [Query A Single Value From The Database](rails/query-a-single-value-from-the-database.md)
|
||||
- [Read In Environment-Specific Config Values](rails/read-in-environment-specific-config-values.md)
|
||||
- [Read-Only Models](rails/read-only-models.md)
|
||||
- [Remove The Default Value On A Column](rails/remove-the-default-value-on-a-column.md)
|
||||
- [Rescue From](rails/rescue-from.md)
|
||||
|
||||
30
rails/read-in-environment-specific-config-values.md
Normal file
30
rails/read-in-environment-specific-config-values.md
Normal file
@@ -0,0 +1,30 @@
|
||||
# Read In Environment-Specific Config Values
|
||||
|
||||
The [`config_for`](https://apidock.com/rails/Rails/Application/config_for)
|
||||
method allows you to read in a YAML file for the current environment in your
|
||||
config files. These YAML files need to be located in the `config` directory.
|
||||
|
||||
For instance, let's say you have `config/extra_settings.yml`:
|
||||
|
||||
```yml
|
||||
development:
|
||||
support_email: support+dev@test.com
|
||||
|
||||
production:
|
||||
support_email: support@test.com
|
||||
```
|
||||
|
||||
You can read that file in as part of your `application.rb` config setup:
|
||||
|
||||
```ruby
|
||||
# config/application.rb
|
||||
module MyApp
|
||||
class Application < Rails::Application
|
||||
extra_settings = config_for(:extra_settings)
|
||||
set_support_email(extra_settings.fetch(:support_email))
|
||||
end
|
||||
end
|
||||
```
|
||||
|
||||
In `development` this call to `config_for` would return a hash of the values
|
||||
under `development`. Likewise in `production`.
|
||||
Reference in New Issue
Block a user