config って?
開発環境ごとに定数を YAML ファイルで管理できるプラグインのこと
##公式リポジトリ
https://github.com/railsconfig/config
##configをインストール
Gemfile に config を記述
Gemfile
gem 'config'
```
vendor/bundle 以下に config をインストール
```
$ bundle install --path vendor/bundle
$ bundle exec rails g config:install
create config/initializers/rails_config.rb
create config/settings.yml
create config/settings.local.yml
create config/settings
create config/settings/development.yml
create config/settings/production.yml
create config/settings/test.yml
append .gitignore
```
gitignoreには自動で下記の内容が追加される
```.gitignore
config/settings.local.yml
config/settings/*.local.yml
config/environments/*.local.yml
```
使用したい環境に応じて編集するファイルを変更
| YAML(環境) |ファイルの場所 |
|:-----------|:------------|
| 全ての環境のYAML | config/settings.yml |
| ローカル環境専用のYAML | config/settings.local.yml |
| 開発環境専用のYAML | config/settings/development.yml |
| テスト環境専用のYAML | config/settings/test.yml |
| 本番環境専用のYAML | config/settings/production.yml |
###記述例
```config/settings.yml
twitter:
follow_target_name: 'mossmoss'
text: 'mossmossmossmossmoss'
url : 'http://mossmossmossmossmoss.com/'
```
###参照例
```
Settings.twitter[:text]
Settings.twitter['text']
Settings[:twitter][:text]
```
[settingslogic](https://github.com/binarylogic/settingslogic "settingslogic")もいいけど、わかりやすいしそこそこ大きな開発の時に使えそうなrails_configでした。