以下のディレクトリ内の プラグイン名.yml ファイルに設定を記述してください。このディレクトリ以下にあるファイルは自動的にプロパティ設定ファイルとしてロード対象となります。
RAILS_ROOT/config/unshiu
案件用の拡張部分で設定をする場合は 案件名.yml ファイルを作成します。
設定例
ymlファイル側
common: &common
portal_friend_list_size: 3
friend_list_size: 5
development:
hoge: foo
<<: *common
test:
hoge: bar
<<: *common
production:
hoge: fuge
<<: *common
共通部分は、common 以下に書き、実行環境毎に設定されるパラメータは各実行環境以下に書くこととします。もし実行環境を増やしている場合、その場合は適時、実行環境を増やす必要があります。
アプリケーション側
以下どちらでもアクセス可能です。可読性のためにはシンボルでの指定を推奨します。
AppResources["base"]["friend_list_size"]
AppResources[:base][:friend_list_size]
定義ファイル分けルール
アプリケーションは以下の yml ファイルを持ちます。
init.yml
アプリケーションではじめに設定しなければならない設定類です。
具体例)
特に secret と secret_key はCSRF対策用にいれられているため、ファイルの支持に従い必ずユニークで推測されないものに変更してください。
プラグイン.yml
各プラグイン機能特有の機能設定に利用します。
mng に関して
管理画面などのリストサイズは利用しているのは各プラグインなのですが、個別に変更できるようにする利点がないため mng.yml でデフォルトサイズをもち、それ以外の値を利用する場合は別途プラグインごとに定義することとします。
設定対象とするもの
以下のルールに当てはまるものを対象とします。
- 1ページ上に表示する項目数
- ファイルのアップロード先ディレクトリの指定
- ドメイン
- メールアドレス
- IPアドレス
- 文字列長、ファイルアップロード最大容量などのvalidateに関連する値
設定対象にしてはないらないもの
以下のものをアプリケーション設定(YAML)で定義することは禁止です。
- 一般的にgettextで置き換えられる文字列
- ユーザやアルバムなどサービスによって可変になる可能性がある文字列
- エラー文言
- モデル中のステータスの値などロジックの変更をともなわないで可変にはならない定数