Why does Rails 3 with Mysql2 Gem ActiveRecord::Base.connection.execute(sql) return Array not Hash?

前端 未结 5 1398
深忆病人
深忆病人 2021-01-31 22:43

I\'m in the process of upgrading an application to Rails 3. I\'ve decided to go with the mysql2 gem. There\'s some legacy code in the app that makes calls like:

         


        
5条回答
  •  后悔当初
    2021-01-31 23:09

    I faced a similar issue a while back and found this to work:

    result = ActiveRecord::Base.connection.execute(sql) 
    result.each(:as => :hash) do |row| 
       row["field"] 
    end
    

    edit: you could also use the select_all method of the connection object that returns a hash

提交回复
热议问题