Как конвертировать хэш в массиве в массив в ruby - PullRequest
4 голосов
/ 16 июля 2010

У меня есть массив, этот элемент хэш

a = [{:history_date=>"15/07/10"}, {:open_price=>"7.90"}]

Я хочу преобразовать в это

h = {:history_date=>"15/07/10", :open_price=>"7.90"}

кто-нибудь, пожалуйста, помогите мне.

1 Ответ

6 голосов
/ 16 июля 2010

Как насчет:

h = a.inject(&:merge)

Каждый хэш в массиве объединяется с предыдущим хешем, пока мы не перейдем к одному элементу. &:merge является сокращением для следующего, которое может быть легче понять, но немного длиннее:

h = a.inject { |all, element| all.merge(element) }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...