Iteration durch array von hashes in ruby

also wenn ich ein array von hashes wie so: (ruby-Anfänger)

input =  [

{"last_name"=>"Gay", "first_name"=>"Rudy", "display_name"=>"Rudy Gay", "position"=>"SF", "minutes"=>39, "points"=>25, "assists"=>6}, 
{"last_name"=>"Collison", "first_name"=>"Darren", "display_name"=>"Darren Collison", "position"=>"PG", "minutes"=>39, "points"=>14, "assists"=>4}

]

wie würde ich das array Durchlaufen sowie zum iterieren durch die einzelnen hash zu haben, so etwas wie dieses:

player1 = {display_name=>"rudy gay", "position"=>"SF"}

Spieler2 = {display_name=>"darren collison", "position"=>"PG"}

Wäre es so etwas wie

input.each do  |x|
Player.create(name: x['display_name'], position: x['position']
end

(vorausgesetzt, ich habe ein player-Modell)

Gibt es einen besseren Weg, dies zu erreichen?

Dank!

  • Dass code korrekt ist, abgesehen von der fehlenden trailing ). Was ist das problem? Sie erhalten jedoch keine Fehler?
  • Hallo Simone, Frage mich, ob es gibt mehr ruby-Weg, es zu tun, oder ob noch etwas effizienter.
  • Überprüfen Sie heraus diese Antwort: stackoverflow.com/a/10022240/4178151. Übergeben Sie das array von hash-direkt nach der create-Methode zu tun, eine große legen.
  • +1 Willkommen, SO, und an Ruby!
Schreibe einen Kommentar