Heim > Artikel > Backend-Entwicklung > Wie berechnet man mit Eloquent die Summe der Produktpreise in einem Laravel-Einkaufswagen?
In einer Warenkorbanwendung müssen Sie möglicherweise die Summe der Produktpreise basierend auf den Produkten eines Benutzers berechnen Warenkorb. In diesem Artikel wird erklärt, wie Sie dies mit Eloquent erreichen, ohne auf Rohabfragen zurückgreifen zu müssen.
Ein typisches Warenkorbszenario umfasst drei Modelle: Benutzer, Produkt und Warenkorb. Das Cart-Modell enthält Spalten für die ID, Benutzer-ID, Produkt-ID und Zeitstempel. Das UserModel hat eine HasMany-Beziehung zu Carts, während das CartModel eine GehörtTo-Beziehung zu User und eine HasMany-Beziehung zu Products hat.
Um die Gesamtzahl der Produkte im Warenkorb zu berechnen, können Sie Auth::user( )->cart()->count(). Um jedoch die Summe der Produktpreise zu erhalten, können Sie den folgenden eloquenten Ausdruck verwenden:
Auth::user()->products->sum('price')
Dieser Code verwendet die sum()-Methode aus der Collection-Klasse, die nach dem Herstellen der Produktbeziehung verfügbar ist. Die sum()-Methode berechnet die Summe der angegebenen Spalte, in diesem Fall der Preisspalte aus dem Produktmodell.
Durch die Nutzung der ausdrucksstarken Abfragefunktionen von Eloquent können Sie problemlos komplexe Berechnungen und Aggregationen an Ihren Daten durchführen, ohne dies zu tun der Bedarf an unformatierten SQL-Abfragen.
Das obige ist der detaillierte Inhalt vonWie berechnet man mit Eloquent die Summe der Produktpreise in einem Laravel-Einkaufswagen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!