suchen

Heim  >  Fragen und Antworten  >  Hauptteil

„Laravel verbindet zwei Tabellen und berechnet die Summe der Spalten der angegebenen zugehörigen Tabelle.“

<p>Ich habe zwei heiße Stars und Beziehungen in Videos und Models</p> <p>//Im Star-Modell</p> <pre class="brush:php;toolbar:false;">public function videos() { return $this->belongsToMany(Video::class); }</pre> <p>und // Im Videomodell</p> <pre class="brush:php;toolbar:false;">public function user() { return $this->belongsTo(User::class); }</pre> <p>Wenn ich<code>$stars = Star::with('videos')->get();</code> ausführe, werden der Schauspieler (Stars) und die Filme, in denen er mitgespielt hat (Videos), angezeigt aufgeführt werden). Ich habe ein JSON-Beispiel angehängt. </p> <pre class="brush:php;toolbar:false;">[{"id":1,"name":"Marek","videos": [{"id":2,"user_id":1,"title":"ferwg","visitors":94,"pivot":{"star_id":1,"video_id" :2}}, {"id":3,"user_id":1,"title":"fgtf","visitors":17,"pivot":{"star_id":1,"video_id": 3}} ]}...</pre> <p>Ich habe einen Besuchereintrag in der Videotabelle. Wie kann ich die Gesamtzahl der Besucher für jeden Schauspieler (Star) in den Filmen herausfinden, in denen er/sie mitgewirkt hat? </p>
P粉617597173P粉617597173486 Tage vor569

Antworte allen(1)Ich werde antworten

  • P粉486743671

    P粉4867436712023-09-06 00:14:49

    collect($stars->first()['videos'])->sum(visitors);

    我使用了你的json数据,但你可以更有效地处理它。我真的建议你阅读https://laravel.com/docs/9.x/collections这篇关于集合的文档。

    Antwort
    0
  • StornierenAntwort