《laravel》eloquent ORMとは?プロパティの使い方を解説

フレームワーク

eloquent ORMについて

eloquent ORMとは

Eloquent ORM(Eloquent Object Relational Mapping)とは、Laravelで提供されているデータ操作の為の機能です。データベースとモデルを関連付け、柔軟なデータ操作を行う為のLaravel独自の機能になります

引用:「LaravelのEloquentORMの基本から具体的な使い方(モデルを使ったDB操作)」

https://www.ritolab.com/entry/120.amp

まとめるとデータベースとモデルの関連付けを行ってくれる機能になります。またeloquentというのは英語で説得力のあるという形容詞の意味です。

ORMとは

オブジェクト関係マッピング(英: Object-relational mapping、O/RM、ORM)とは、データベースとオブジェクト指向プログラミング言語の間の非互換なデータを変換するプログラミング技法である。オブジェクト関連マッピングとも呼ぶ。実際には、オブジェクト指向言語から使える「仮想」オブジェクトデータベースを構築する手法である。オブジェクト関係マッピングを行うソフトウェアパッケージは商用のものもフリーなものもあるが、場合によっては独自に開発することもある。

出典: フリー百科事典『ウィキペディア(Wikipedia)』

https://www.ritolab.com/entry/120.amp

互換というのは「入れ替え可能」という意味なので非互換というのは「入れ替え不可能」という意味です。ORMの意味を簡単にまとめると、データベースとプログラミング言語でデータのやりとりを行う技法のことを指します。

eloquentのプロパティ

よく使うeloquentプロパティ

プロパティ名

プロパティ内容

$connection

どのDB接続するのかを記述できます。またonメソッドで動的に変更可能です。

$table

どのテーブルを対象とするのを設定できます。

$primaryKey

主キーの設定ができます。

$incrementing

主キーを自動でインクリメントするかどうか自動で決められます。

$timestamp

テーブルの作成、更新日時を自動更新する設定ができます。

$fillable

$fillableに指定したカラムはcreate()fill()update()で値が代入することができます。ちなみにfillableは英語で「記入可能」という意味です。

$guarded

$guardedは逆に代入させないカラムを指定できます。

$hidden

モデルを配列/JSON変換するときに隠蔽されるcolumnの指定できます。例えばユーザー情報にまつわる情報をrest apiで取得するとして、不用意にパスワードが入った情報を扱うことは個人情報が流出するリスクがあります。これに対応するために、$hiddenというプロパティをつかって対応します。

$visible

$hiddenとは逆で、表示したいカラムを指定します。ディフォルトですべて$visibleになっているので、特に使う必要はないかと思います。

laravelの知識をつけるのにおすすめの手段

名書!PHPフレームワーク Laravel入門

世界最大級のオンライン学習プラットフォーム

タイトルとURLをコピーしました