Rails モデルとデータベースとテーブルの関係

rails db:migrate でマイグレーションファイルの記述にあるようにテーブルが作成される。

この時にできるのはモデル名の複数形のテーブルなことに注意。

複数形であるという点と、できるのはテーブルだっていう点に注意。

rails db:createで出来るのはデータベース。データベース内にはそれぞれ対応するモデルがあるテーブルが存在している。

これがわかっているとモデルを介してデータベースやテーブルとやり取りしてるのがよくわかる。データベース名はそもそもアプリケーション名がついているし、テーブル名は複数形である。実際にコントローラー内のアクションをみてみると単数形のモデルからデータ見つけてきたり、書き込んだりしてるワケだからモデルを介している。取ってきたデータをインスタンス変数に代入する時はそのデータが一つのレコードを扱ってるのか全データを扱っているのか等で命名をこちらで判断して付ける