179 votes

en ruby, comment trier un tableau de hachages?

Dans mon rails 3, app, je suis l'obtention de données à partir d'une des ressources web externe qui renvoie un tableau de données, où chaque élément du tableau est un hachage avec 3 paires clé/valeur

  :phone => "2130001111", :zip => "12345", :city => "sometown"

lorsque j'affiche le tableau dans un tableau, à mon avis, j'aimerais trier les données par zip donc tous les téléphones de la même région sont ensemble.

Je devine... ruby est un moyen facile de le faire?


question connexe, peut will_paginate de paginer les données dans un tableau (je ne l'ai utilisé sur active enregistrement de données)

416voto

Gareth Points 42402

Simples:

 array_of_hashes.sort_by { |hsh| hsh[:zip] }
 

19voto

Edu Points 1053
sorted = dataarray.sort {|a,b| a[:zip] <=> b[:zip]}

3voto

taivn07 Points 31

Si vous souhaitez paginer des données dans un tableau, vous devez exiger 'will_paginate / array' dans votre contrôleur.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X