Rails Active Record の基礎をまとめてみた 1
Rails Active Record とは?
Active Record とはMVC(Model・View・Controllerの略)のModelにあたる部分でビジネスロジックと呼ばれる、データベース上のデータに対する処理手順を示したものでORM(オブジェクト リレーション マッピング)と呼ばれる、データベースの作成や利用を簡単に行えるようするものです。
つまりActive Recordとは、、、
データベースとのやりとりを簡単にするもの!
例えば booksテーブルがあり、そこのデータを全て取り出したい場合、、、
SQL文を使うと
SELECT * FROM books;
Active Recordを使えば
Book.all
と、直感的でわかりやすくデータベースからデータを操作することができます。
Active Recordのできること
- Modelの内容をわかりやすく表記する
- テーブルの作成・検索・更新・削除などの操作
- テーブル同士の関連付け(アソシエーション)を簡単に行える
- 加筆するレコードに対して制約(バリデーション)をかけられる
- Model同士の継承を簡単に行える
Active RecordのCMC
CMCとはConvention over Configuration(直訳 : 構成に関する条約)の略でつまりActive Recordのルールについてです。
命名規則
- テーブルの名前は複数形で最初の文字が小文字(本のテーブルならbooks)
- テーブルの名前が複数単語となる場合はスネークケースと呼ばれるアンダーバーで単語同士を繋げる記述方法で記述し最後の単語のみ複数形(本の写真を写真のテーブルならばbook_images)
- モデルのクラス名は単数形で最初を大文字にする(本のモデルのクラス名はBook)
- モデルクラス名が複数の単語となる場合キャメルケースと呼ばれる単語の最初を大文字にして単語同士を繋げる記述方法(本の写真のモデルクラス名はBookImage)
スキーマのルール
- デフォルトで主キーと呼ばれるinteger型のidという名前を持つカラムが生成される
- テーブル同士の関連付け(アソシエーション)を行うときなどはテーブル名の単数形_idとしなければならない