ハッシュには次のキーがあります。
address, postcode
それぞれに「shipping_」プレフィックスを追加して、次のようにします。
shipping_address, shipping_postcode
代わりは。これどうやってするの?
ハッシュには次のキーがあります。
address, postcode
それぞれに「shipping_」プレフィックスを追加して、次のようにします。
shipping_address, shipping_postcode
代わりは。これどうやってするの?
hsh1 = {'address' => "foo", 'postcode' => "bar"}
hsh2 = Hash[hsh1.map{|k,v| [k.dup.prepend("shipping_"),v]}]
p hsh2
# >> {"shipping_address"=>"foo", "shipping_postcode"=>"bar"}
アップデート
hsh1 = {'address' => "foo", 'postcode' => "bar"}
hsh2 = Hash[hsh1.map{|k,v| ["shipping_#{k}",v]}]
p hsh2
# >> {"shipping_address"=>"foo", "shipping_postcode"=>"bar"}
破壊的にやりたい場合は、これが簡単な方法です。
hash.keys.each{|k| hash.store("shipping_#{k}", hash.delete(k))}