Skip to content

Instantly share code, notes, and snippets.

@Ladicle
Last active August 29, 2015 14:21
Show Gist options
  • Save Ladicle/b68b2a1cb1124d314670 to your computer and use it in GitHub Desktop.
Save Ladicle/b68b2a1cb1124d314670 to your computer and use it in GitHub Desktop.
Hashのキーをシンボルに変換する(全階層 & 途中配列が入っていてもok)
def deep_symbolize_keys
self.each_with_object({}) do |(key, val), memo|
if val.is_a?(Array)
val = val.map{|v| v.deep_symbolize_keys}
elsif val.is_a?(Hash)
val = val.deep_symbolize_keys
end
memo[key.to_s.to_sym] = val
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment