Mongo ruby驱动程序似乎将结果放入一个以字符串为键的哈希。有没有办法告诉它将键转换成符号呢?
答案 0 :(得分:6)
根据FAQ,尽管Mongo中存在符号类型,并且您可以在符号中存储符号,但BSON格式指定键必须是字符串。
答案 1 :(得分:4)
如果您有一个以字符串为键的Hash
,并且您希望能够使用Symbol
作为访问其值的键,则可以使用HashWithIndifferentAccess
。如果您不使用Rails,可以通过ActiveSupport
gem。
my_hash = { 'name' => 'Joe', 'email' => 'joe@schmoe.com' }
my_hash = HashWithIndifferentAccess.new my_hash
puts my_hash[:name] # "Joe"