需要两个从两个查询返回一个activerecord关系

时间:2017-12-04 11:57:39

标签: ruby-on-rails ruby activerecord

我在我的数据库上有两个查询

incidents = Incident.arel_table

Incident.where(incidents[:client_id].in(client_ids_including_descendants(false)))

Incident.joins(:incident_support_requests)
        .where(incident_support_requests: { 
                 provider_type: 'SocProvider',                                                                                          
                 provider_id: self.soc_provider_ids,                                                                                       
                 state: 'opened'})

我需要加入一个ActiveRecord::Relation,而不计算中间查询(即带有+)我从这里跟随答案 How do I combine results from two queries on the same model?

当试图加入这两个查询时应该是一个或者一个加上结果形成另一个我总是得到的结果无法访问活动记录关系
但我无法得到它

1 个答案:

答案 0 :(得分:0)

怎么样?

incid1 = ...
incid2 = ...

incids = Incident.where(id: incid1.pluck(&:id) + incid2.pluck(&:id))