在Rails中查询-查询中的双引号字符串

时间:2019-01-08 19:04:52

标签: ruby-on-rails postgresql activerecord ruby-on-rails-5

我需要这样的查询

SKU A

但是结构必须类似于XREF

如何在使用替换的原始查询中获得双引号?在轨道上。

scope :find_email_usage, -> (id) {
    where("EXISTS ((with filter_table as (select id, jsonb_array_elements(jsonb_array_elements(filters) -> 'criteria') filter_json) select 1 from filter_table where filter_json @> '{\"mail_id\": ?}'))", id.to_s, id.to_s)

  }

但是还有其他方法可以在原始查询中获取双引号字符串吗?

1 个答案:

答案 0 :(得分:0)

最简单的方法是构建一个Ruby哈希,将其转换为JSON,然后将该字符串提供给查询:

where('EXISTS ((... where filter_json @> ?::jsonb))', { 'mail_id' => id.to_s }.to_json)