Laravel にてリレーション先を持っていないモデルを返す方法

やたりたいことと結論

Userのリレーション先Postにて、Postを持たないUserを取得したい!と言うときがあるかもしれません。そんなときに便利なクリエが、

doesntHave()
orDoesntHave()

です。

使い方

例えば上に書いた条件(Userのリレーション先Postで、Postを持たないUserを取得したい)で実行したい場合は、以下のようにクエリを作りましょう。

$user = User::doesntHave('posts')->get()

なお、この’posts’ の中身はリレーションのメソッドを書きましょう。

このようにすると簡単にリレーション先(Post)を持たないものを返すことができます。

参考記事

Eloquent:リレーション 8.x Laravel

その他のおすすめ記事

Laravel
「Laravel」の記事一覧です。
自分が書いているLaravelの記事一覧です!
とびうお
ブログ管理人です!本人が書く記事は少なめ。。ごめんなさい))。

コメント

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