【问题标题】:Getting data from a rails raw SQL query从 Rails 原始 SQL 查询中获取数据
【发布时间】:2016-09-14 06:11:44
【问题描述】:

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

我有以下原始 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,但我不知道必须“获取”它。我本来希望在视图中调用@sail_result.id,但它会返回

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

对我该怎么做有什么想法吗?我认为是 2 分钟的问题已经升级为数小时徒劳的研究。

谢谢

【问题讨论】:

    标签: ruby-on-rails sqlite


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-10-12
      • 2013-04-26
      • 2014-02-15
      • 1970-01-01
      • 2018-06-02
      • 2014-02-20
      • 2010-12-03
      • 2013-10-31
      相关资源
      最近更新 更多