从rails原始SQL查询中获取数据

时间:2016-05-17 23:57:04

标签: ruby-on-rails sqlite

我正在尝试使用数据库查询的结果来测试另一个查询的结果。

我有以下原始sql查询

sail_query = "select s.id from sailings AS s
  INNER JOIN events on events.sailing_id = s.id
  INNER JOIN event_registers on events.id = event_registers.event_id
  where event_registers.event_id = #{event_register.event_id}
  and event_registers.user_id = #{event_register.user_id}"
@sail_result = ActiveRecord::Base.connection.execute(sail_query)

这会产生

[{"id"=>1, 0=>1}]

这是我的期望。我需要" id"检查它与另一个身份证,但我不知道必须得到'它。我希望在视图中调用@ sail_result.id,但返回

未定义的方法`id' for [{" id" => 1,0 => 1}]:数组

有关如何做到这一点的任何想法?我认为是一个2分钟的问题已经升级为数小时无效的研究。

由于

1 个答案:

答案 0 :(得分:0)

由于它返回一个数组,你可以@sail_result[0].id来获取该值。