activesupport4.1.2のHash#deep_transform_keysとか
nested Arrayにも適用されるようになったとか。地味に便利かも
require "active_support/core_ext/hash/keys" ahash = { :nested_array => [ { :a => 1, :c => 2}, { :b => 3 } ] } transformed = ahash.deep_transform_keys { |key| (key.to_s + "_old").to_sym } p transformed
~ ➤ ruby -e "gem 'activesupport', '=4.1.1'; load 'a.rb'"
{:nested_array_old=>[{:a=>1, :c=>2}, {:b=>3}]}
~ ➤ ruby -e "gem 'activesupport', '=4.1.2'; load 'a.rb'"
{:nested_array_old=>[{:a_old=>1, :c_old=>2}, {:b_old=>3}]}
コード見る限りオフにはできないのかな。