zurückkehr Ich schrieb eine ActiveRecord
Abfragezählung einiger Daten zu holen, nachdem er von zwei Spalten Gruppierungs col_a
und col_b
active Abfrage mit der Gruppe auf mehreren Spalten eine Hash mit Array als Schlüssel
result = Sample.where(through: ['col_a', 'col_b'], status: [1, 5]).where("created_at > ?", 1.month.ago).group(:status, :through).count
Dies gibt:
{[1, "col_a"]=>7, [1, "col_b"]=>7, [5, "col_a"]=>4, [5, "col_b"]=>1}
Nun meine Frage ist, wie kann ich auf die Werte in diesem Hash?
So etwas wie results[1, "col_a"]
verursacht einen Fehler (falsche Anzahl von Argumenten). Ich weiß, dass ich dies tun kann, indem ich eine Schleife schreibe und die Werte eins nach dem anderen extrahiere.
Allerdings möchte ich wissen, ob es einen idiomatischen Weg gibt, auf die Werte zuzugreifen, etwas ähnlich wie results[1]
, vielleicht?
'Ergebnisse [[1," col_a "]]' – lusketeer
In den verschachtelten Klammern verpasst. – tekina