Ich habe diesen Hash mit Wins, und ich sortiere es basierend auf wie viele Gewinne ein Spieler hat (eine Highscoreliste). Jetzt bekomme ich jeden Wert basierend auf einer Spieler-ID. Wie bekomme ich den Index des Wertes, den ich bekommen habe? (So kann ich die Highscore-Platzierung bekommen).Get Index von Hash mit Hash-Schlüssel
#Highscore list.
highscore = Hash.new
@users.each_with_index do |player, index|
playerTotalGames = @finishedgames.where(log_id: player.id)
playerTotalWins = playerTotalGames.where(winner: true)
highscore[player.id] = playerTotalWins.length.to_i
end
@highscore = highscore.sort_by{ |k, v| v }.reverse.to_h # Sort highscore list
Ich bin verwirrt tun kann. Welchen Wert wünschen Sie den Index? – jeffdill2
@ jeffdill2 zum Beispiel, wenn ich ein Array von Hashes habe, die wie folgt aussehen: highscore = {Playerid1 "=> 0," Playerid2 "=> 0} Und ich möchte den Hash für Playerid2, wie folgt erhalten: Highscore [@ user.id]. Jetzt möchte ich den Index dieses Hash. Also der Index für Playerid2 wird 1 und Index für Playerid1 wird 0 – Cinta