如何使用ActiveRecord :: Base.connection.exec_query获取类型化结果

时间:2017-11-13 10:50:56

标签: ruby-on-rails postgresql activerecord

我正在使用ActiveRecord :: Base.connection.exec_query()执行查询,但继续将整数作为字符串获取,如下所示:

regular expression

有人能告诉我如何获取正确的类型,因为这些信息已经包含在结果对象中了吗?

数据库是Postgres - 我记得我没有遇到mysql这个问题。 Rails仍然是4.2.4

非常感谢, 克里斯托弗

1 个答案:

答案 0 :(得分:1)

在Rails 4.2上,您可以使用ActiveRecord::Result

中的cast_values
ActiveRecord::Base.connection.exec_query(query).cast_values

Rails 5已经返回documentation

突出显示的呈现值
# Get the record values of the result:
result.rows
# => [[1, "title_1", "body_1"],
      [2, "title_2", "body_2"],
      ...
     ]