Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Abrufen des Zeilenrangs in OrderBy desc Eloquent-Abfrage, Wie kann ich diese Abfrage in Laravel 5.5-Eloquenten zum Laufen bringen?)

Das ist meine Lösung.

Ich habe diese Funktion zuerst zu meiner User Modal Class hinzugefügt.

public function getRanking(){
   $collection = collect(User::orderBy('wins', 'DESC')->get());
   $data       = $collection->where('id', $this->id);
   $value      = $data->keys()->first() + 1;
   return $value;
}

Jetzt führe ich aus meiner Sicht meine Funktion getRanking() aus.

@foreach($ranking as $key => $rankings)
    <tr>
        <td>{{ $rankings->getRanking() }}</td>
        <td><a href="{{ route('profileView', ['id' => $rankings->id]) }}">{{ $rankings->username }}</a></td>
        <td>{{ $rankings->wins }}</td>
        <td>{{ $rankings->losses }}</td>
    </tr>
@endforeach

Ich verwende meine Array-Schlüssel, um das Benutzerranking zu bestimmen.