🔥

Railsアプリケーション作成②

2023/03/24に公開

ユーザーのアクセス状況によって表示内容が変わるサイトを「動的サイト」と呼ぶ。

動的サイトを作るには、必要な情報を保存しておき、
状況に応じて抽出して表示させる仕組みが必要!

この仕組みの構築に必要な

モデルとは

「モデル(Model)」は、アプリケーション固有のデータや処理を扱う部分のこと。
データベースにアクセスして、データの登録や取得、更新、削除などの処理を行う!

(app→modelsディレクトリ内にある「モデル名.rb」が、モデルのファイル)

モデルはデータベースとやり取りをする役割を持っている!

データベースとは

「データベース(DB, database)」は、データを格納する保存先のこと。
データを効率的に保存したり、高速で検索できるようになる。

ウェブアプリケーションに必要なさまざまなデータが格納されており、
利用するには一定の規則に基づいてデータを整理しておく必要がある!

Railsでは、これらのデータを「テーブル」にまとめ、複数のテーブルを関連付けて保存している!

(データベースに関するファイルは、app→dbディレクトリ内に保存されている!)

テーブル内のデータは、Excelの表形式のような構造で整理されているのが特徴

テーブルの構造

id タイトル 本文 投稿者 投稿日
1 こんにちは 今日はいい天気ですね。 メンター太郎 3/3
2 今日のお昼ご飯 カフェのタコライスです! メンター太郎 3/4
3 お久しぶりです! 最近、生徒さんがみるみる上達しています。みなさんのご質問お待ちしております! メンター太郎 4/4

レコードとカラム

  • カラム
    テーブルの縦1列のこと
  • レコード
    テーブルの横1行のこと

Railsで扱うテーブルの特徴

Railsでテーブルを作成すると、「id」のカラムが自動的に生成される。
idのカラムには、id番号が順番に割り振られ、
同じidは存在しないので、このidによってレコードの中身を特定できる!!

通常データベースとやりとりをするには、データベース言語(SQL)でアクセスする必要がある。

が、モデルを使うことでデータベースとのやりとりが簡略化され、
SQLを記述しなくてもデータベース内にテーブルを作成したり、
データを取得したりすることができるようになる!!

(モデルがSQL文をデータベースに渡すことで
データを書き込んだり、保存されたデータを読み込んだりしている)

モデル → SQL → データベース


データベース、モデル、ビュー、コントローラーの役割を復習。
週末課題作成に入れるよう、明日も復習してrailsについて理解深めたい。

Discussion