Rails – モデルによるDB操作の仕組み

概要

モデルによるデータベース操作を、できるだけ基本的な方法で行うことを試した。

またテーブル構造の変更に対して、マイグレーションを行わずにmysqlコンソールとコントロールファイル編集だけで対応できることを確認した。

モデルとテーブルの生成

モデルの生成

以下の様にモデルを生成する。このモデルは文字列型のフィールドを1つ持っている。

rails generate model record col1:string

app/models/record.rbが作成される。

マイグレーションファイルも作成されていて、string型のフィールドが定義されている。

マイグレーション~テーブル生成

このモデルからマイグレーションによりテーブルを生成する。

rails db:migrate

mysqlでテーブルが生成されていることと、そのテーブルの構造が確認できる。

モデルの構造の確認

コントローラーからモデルの内容を出力させる。

トップページを出力させると、サーバー実行中のコンソールに以下が出力される。

Railsデフォルトのid、created_at、updated_atに加えてcol1が要素に加わっている。

データの登録確認

トップページアクセス時にレコードを1つ登録する。レコードのフィールドはハッシュで指定する。

Railsサーバーのコンソールに以下が出力され、データが生成・登録されていることがわかる。

mysqlでもテーブルへの登録状況が確認できる。

データの読み込み確認

トップページ読み込み時にデータベースを読み込んで表示するように変更する。

出力は以下のとおりで、データベースの内容が読みだされている。

MySQLでのテーブル変更

以下の様にmysqlで直接テーブルにフィールドを加える。

Railsで変更後テーブルへの書き込み

トップページアクセス時に、フィールド追加後のテーブルに新たなデータを書き込むように変更。

トップページ表示時にデータが登録され、テーブルは以下の様に更新されている。

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です