recherche

Maison  >  Questions et réponses  >  le corps du texte

"Laravel joint deux tables et calcule la somme des colonnes de la table associée donnée"

<p>J'ai deux stars tanulky et des relations dans des vidéos et des modèles</p> <p>//Dans le modèle Star</p> <pre class="brush:php;toolbar:false;">vidéos de fonction publique() { return $this->belongsToMany(Video::class); }</pré> <p>et // Dans le modèle Vidéo</p> <pre class="brush:php;toolbar:false;">utilisateur de fonction publique() { return $this->belongsTo(User::class); }</pré> <p>Si j'exécute<code>$stars = Star::with('videos')->get();</code>, l'acteur (les stars) et les films dans lesquels il a joué (les vidéos) être répertorié). J'ai joint un exemple JSON. </p> <pre class="brush:php;toolbar:false;">[{"id":1,"name":"Marek","vidéos" : [{"id":2,"user_id":1,"title":"ferwg","visiteurs":94,"pivot":{"star_id":1,"video_id" :2}}, {"id":3,"user_id":1,"title":"fgtf","visiteurs":17,"pivot":{"star_id":1,"video_id": 3}} ]}...</pré> <p>J'ai un élément de visiteurs dans le tableau vidéo. Comment puis-je connaître le nombre total de visiteurs pour chaque acteur (stars) dans les films dans lesquels il est apparu ? </p>
P粉617597173P粉617597173456 Il y a quelques jours548

répondre à tous(1)je répondrai

  • P粉486743671

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

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

    J'ai utilisé vos données json, mais vous pouvez les traiter plus efficacement. Je vous recommande vraiment de lire https://laravel.com/docs/9.x/collectionscette documentation sur les collections.

    répondre
    0
  • Annulerrépondre