Mysql
 sql >> Database >  >> RDS >> Mysql

Laravel 5.6 withCount e dove istruzione

Dal momento che definisci una chiave esterna sul tavolo da gioco, hai una relazione uno-a-molti tra il Player e Game già. Prova ad aggiungere la seguente relazione al tuo Player modello:

// Player.php
public function won()
{
    // must specify the foreign key because it is not the usual `_id` convention.
    return $this->hasMany(Game::class, 'winner');
}

Quindi accedi ad ogni giocatore come:

@foreach($players as $player)
    {{ $player->won->count() }}
@endforeach

Invece di eseguire query nel file di visualizzazione, dovresti idealmente eseguire le seguenti operazioni nel controller:

public function index()
{
    /*Load the view and pass the groups*/
    return \View::make('players.index')->with('players', Player::with('won')->get());
}