ホームページ >PHPフレームワーク >Laravel >Laravel ORM の優れた操作をご存知ですか?

Laravel ORM の優れた操作をご存知ですか?

藏色散人
藏色散人転載
2020-05-18 16:26:073100ブラウズ

Laravel Getting Started の次のチュートリアル コラムでは、あなたが知らない Laravel ORM のすばらしい操作を紹介します。それ!

Laravel ORM の優れた操作をご存知ですか?

append

    class User extends Model
    {
        protected $appends = ['is_adult'];
        public function getIsAdultAttribute()
        {
            return $this->attribute['age'] > 18;
        }
    }

この操作を使用して、データベースに存在しないフィールドをモデルに追加したことがありますか?とても便利。ただし、$appends はグローバルであり、is_ Adult フィールドはすべてのクエリに追加されます。

User::select('id', 'name')->first();

このようにクエリを実行すると、年齢フィールドが存在しないことを示すエラー メッセージも報告されます。

このようにクエリを実行する場合、クエリ結果セットに is_social を追加できます。

    $user = User::first();
    $user->append('is_adult');

もう終わったと思いますか?それだけではなく、複数のユーザーにクエリを実行している場合はどうなるでしょうか? for ループを実行して自分自身を追加する必要があるのでしょうか?いいえ、いいえ、私たちのエレガントな Laravel が私たちのためにそれを考えてくれました。

    $user = User::paginate(10);
    $user->each->append('is_adult');

query

     User::where(&#39;sex&#39;, &#39;girl&#39;)->where(&#39;age&#39;, &#39;<=&#39;, 20)->where(&#39;money&#39;, &#39;>&#39;, 1000000000000)->get();

この種のクエリ文をよく書きますか?問題は見つかりましたか?お金持ちのロリータはなかなかいないので、まだ誘われていません。

Laravel ORM の優れた操作をご存知ですか?

これにどうやって耐えられるでしょうか?少し書き直して、先頭にクエリを追加するだけで、簡単に金持ちのロリータと結婚して、人生の頂点に達することができます。

Laravel ORM の優れた操作をご存知ですか?

#どこで

#リッチロリータが見つからない場合は、条件を下げて真剣に彼女を見つけてください。少し難しいですが、彼女の ID がわかっている場合は、

User::query()->find(2);

を直接使用して彼女を見つけることができ、簡単かつ高速です。では、ID がわからず、名前だけがわかっている場合はどうすればよいでしょうか?どこの条件を書きますか?もっと早い方法を教えてください。結局のところ、ガールフレンドを見つけるのが待ちきれません。

User::query()->firstWhere([&#39;name&#39; => &#39;乔碧萝&#39;]);

最初にこれだけ書いて、後で他の素晴らしい操作を見つけたら更新します。

laravel フレームワークの技術記事については、

laravelチュートリアルをご覧ください。

以上がLaravel ORM の優れた操作をご存知ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はlearnku.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。