我正在尝试使用数据库查询的结果来测试另一个查询的结果。
我有以下原始 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”来对照另一个 id 检查它,但我不知道必须“得到”它。我本来希望在 View 中调用 @sail_result.id,但它返回了
[{"id"=>1, 0=>1}]:Array 的未定义方法 `id'
关于我如何做到这一点有什么想法吗?我认为是 2 分钟的问题已经升级为数小时的无结果研究。
谢谢
请您参考如下方法:
由于它返回一个数组,您可以执行 @sail_result[0].id 来获取该值。

