Ich habe ein Benutzermodell, das ein Array enthält. Dieses Array wird verwendet, um Punkte zu speichern, die der Benutzer in verschiedenen Aktivitäten erzielt hat. Es sieht im Wesentlichen wie folgt:Sortieren von Benutzern in Rails basierend auf Werten im Array-Attribut des Benutzermodells
<ActiveRecord::Relation [#<User id: 1, fullname: "Kaja Sunniva Edvardsen", points: [0, 4170, 3860, 2504, 2971, 3859, 4346]>, #<User id: 2, fullname: "Alexander Lie Sr.", points: [0, 3273, 3681, 2297, 2748, 4202, 3477]>]>
ich alle Benutzer durch die verschiedenen Werte in den Punkten Array sortieren möchten für jede der verschiedenen Aktivitäten Rangliste in der Lage zu schaffen, Punkte [0], Punkte [1] usw ...
durch Punkte Sortierung [1] sollte Kaja erste Rückkehr, 4170> 3273, der durch die Punkte sorting [6] sollte Alexander die erste Stelle setzen, 4202> 3859
Wie mache ich das?
Was genau möchten Sie sortieren? Benutzer oder Punkte oder? Wie sortieren Sie - was ist "mit anderen Werten"? Können Sie ein erwartetes Ergebnis geben? –
Ich möchte die Benutzer nach den Werten im Array sortieren. So etwas wie OrderBy (Punkte [1]) funktioniert nicht. Das Ergebnis, das ich hier möchte, wäre Kaja zuerst und Alexander zweitens aufgrund Kajas Punkt [1] Wert höher, 4170 vs 3273 – Oyvkva
Was ist die Modelldefinition und Migration für Benutzer? Wie genau speichern Sie ein Array in db? –