Laravel Eloquent で関連する列の値の合計を計算する
ショッピング カート アプリケーションでは、ユーザーの商品に基づいて商品価格の合計を計算する必要がある場合があります。カート。この記事では、生のクエリに頼ることなく、Eloquent を使用してこれを実現する方法について説明します。
一般的なショッピング カートのシナリオには、ユーザー、製品、カートの 3 つのモデルが含まれます。 Cart モデルには、ID、ユーザー ID、製品 ID、およびタイムスタンプの列が含まれています。 UserModel には Carts との hasMany 関係があり、CartModel には User とのbelongsTo 関係と Products との hasMany 関係があります。
カート内の製品の総数を計算するには、Auth::user( )->カート()->カウント()。ただし、製品価格の合計を取得するには、次の Eloquent 式を使用できます。
Auth::user()->products->sum('price')
このコードは、Collection クラスの sum() メソッドを使用します。このメソッドは、製品関係を確立した後に使用できます。 sum() メソッドは、指定された列 (この場合は Product モデルの価格列) の合計を計算します。
Eloquent の表現力豊かなクエリ機能を活用することで、複雑な計算や集計をデータに対して簡単に実行できます。生の SQL クエリの必要性。
以上がEloquentを使用してLaravelショッピングカート内の製品価格の合計を計算するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。