多态关联中的查询-Rails 5.1

时间:2018-07-20 13:35:43

标签: ruby-on-rails-5 polymorphic-associations

我想查询一个多态关联:

@pois = Poi.where(poitable: Sleep.where(track_id: @track.id))

好的,有办法...,我想添加第二个参数:

@pois = Poi.where(poitable: Sleep.where(track_id: @track.id)).or.where(poitable: Town.where(track_id: @track.id))

现在,我得到一个错误:“参数数量错误(给定0,预期为1)”

怎么了?

1 个答案:

答案 0 :(得分:0)

or方法采用另一个ActiveRecord查询作为参数

因此语法为:

Poi.where(poitable: Sleep.where(track_id: @track.id)).or(Poi.where(poitable: Town.where(track_id: @track.id)))