goodbenjamin 2009-03-20 22:50
浏览 213
已采纳

把一个对象数组映射成hash?

问题是这样的

我有一个表
option  ,有两个字段
  key
  value

我在rails里

option = Option.find(:all)


我要在前端显示,,这样很不方便

我想把它映射一个hash或者是一个对象而不是对象数组

请问各位大人们有什么好方法么??
问题补充
    option = Option.find(:all)
   
    options = Hash.new
    option.each do |op|
      options[op.option_key] = op.option_value
    end


这是个弱智问题。。嘎嘎

结贴结贴

不过如果您有更好的答案也请贴上来

  • 写回答

3条回答 默认 最新

  • xenocide 2009-03-21 00:33
    关注

    运行速度最快的版本是放弃find(:all)……
    [code="ruby"]
    options = {}
    Option.connection.execute('select * from options').each do |opt|
    options[opt['key']] = opt['value']
    end
    [/code]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?