转换带有符号的哈希数组

Ido*_*ini 0 ruby ruby-on-rails

我有一系列哈希:

[{'object' => 'ob1', 'quantity' => '2'}, {'object' => 'ob2', 'quantity' => '3'}, .....]
Run Code Online (Sandbox Code Playgroud)

我想将其转换为符号形式:

[{:object => 'ob1', :quantity => '2'}, {:object => 'ob2', :quantity => '3'}, .....]
Run Code Online (Sandbox Code Playgroud)

尝试过:

symbolized_array = array.each => { |c| c.to_options }
Run Code Online (Sandbox Code Playgroud)

但我没有获得任何转换,symbolized_array与数组相同

为什么?

Urs*_*sus 5

您已标记,rails以便您可以使用symbolize_keys

array.map(&:symbolize_keys)
Run Code Online (Sandbox Code Playgroud)


Vas*_*fed 5

从ruby 2.5开始Hash#transform_keys

array.map{|hash| hash.transform_keys(&:to_sym) }
Run Code Online (Sandbox Code Playgroud)

在此之前,它与快捷方式一起在activesupport(导轨的一部分)中可用 symbolize_keys