基本開発ルール
命名規則
Controller, Helper, View Directory, lib, public/images
- 衝突を回避するためプラグイン名を prefix にする。
action名
scaffold で生成される規則を基本とし、確認画面は confirm とする。
1controller内で複数の confrim がある場合は 対応Action名 + _confirm とする。
例) 削除の確認画面
delete_confirm
- 新規作成画面・new
- 入力画面・・・edit
- 確認画面・・・confirm
- 完了画面・・・done
- 一覧画面・・・list
- 詳細画面・・・show
Model
- あるプラグイン専用の Model はプラグイン名を prefix にする。
- 複数のプラグインから使われる Model は別のプラグインとして切り出し、そのプラグイン名を prefix とする。実際に利用するプラグインに依存関係を明記する
- モデル名は原則Railsの命名規則に則り、単数形。テーブル名は複数形となる。
- モデル間の関係を表すテーブル名はモデル間の関連の多重度にしたがって命名する。
- 例:日記のエントリと画像の関係なら多対多なので、dia_entries_abm_imagesとなる。
db/migrate
- migrate生成数字_create_テーブル名.rb
- 基本的なルールは Model に準ずる
views/layouts
- プラグイン化するときには、_プラグイン名.rhtml にする
application_controller.rb, application_helper.rb, application.rhtml
- プラグイン間で共有するファイルは、プラグイン化後、別々に更新が行われる可能性がある
- 複数の controller にまたがるが、ひとつのプラグインからしか使わないメソッドなどは、プラグイン共通の基底クラス/レイアウトを作ってそこで定義する。
- どうしても複数のプラグインから共通して使いたい場合は utils のような扱いで切り出し、さらに別プラグインとし、依存関係(バージョンも含む)を明記する
|
|