この記事はmiriwoお一人様 Advent Calendar 2022の2日目の記事です
概要
- モデルクラスの
exist()
を用いてレコードが存在するか確認する方法をまとめる。
方法
-
下記の様に記載することでレコードが存在していればtrueを、存在していなければfalseを返す。
モデル::where('カラム名', 値)->exists();
-
例えばusersテーブルに紐づくモデルUserを用いてusers.idカラムが1のレコードが存在しているかを確認する場合下記の様に記載する。
use App\Models\User; User::where('id', 1)->exists();
-
レコードが存在している時はtrueが帰り、存在していない時はfalseが変える。
-
ちなみにおそらく、
where()
の代わりにfind()
を使うことはできないはず。(レコードがある時はtrueを返すが無い時は例外が投げられたはず、、!)use App\Models\User; // こういう書き方はできないはず User::find(1)->exists();