获取ActiveRecord MySQL查询结果作为哈希,而不是数组

Sol*_*mon 6 activerecord mysql2

当使用ActiveRecord运行mysql查询时Class.connection.execute('query here'),结果是一个数组,而不是postgres中的哈希.这是使用mysqlmysql2适配器测试的,即使默认情况mysql2是将查询结果作为哈希返回.

如何ActiveRecord更改连接上的配置选项以将查询结果作为哈希返回?我可以不用ActiveRecord它,我应该使用原始mysql2客户端吗?

seb*_*kom 19

我有类似的问题,我找到了这个答案的解决方案:

你可以做data = Class.connection.exec_query('query here')一个ActiveRecord :: Result

然后,您可以执行data.first哈希,或使用文档中提到的任何其他方法.