Rails查询包括?数组

时间:2013-01-24 20:38:10

标签: ruby-on-rails rails-activerecord

我将Section ID数组存储为整数。 event.sections #=> ["1","115","130"] 没有事件has_many Sections关系。也许这是一个问题。我只需要来自Section的id而不需要其他内容,所以我在Postgres中将整数数组存储为序列化字符串。

我可以这样做,返回一系列事件:

Event.upcoming.select { |m| m.sections.include? @section.id.to_s}

有没有办法查询这个以获取ActiveRecord :: Relation?

编辑-----

我之前的选择查询不正确,因为如果@section.id = "1"它会匹配并选择具有这些ID的事件"1", "10", "21", "100"

这是正确的选择陈述:

Event.upcoming.select {|e| ( e.newsletters.split(",").flatten.grep /^#{@section.id.to_s}$/ ).presence }

0 个答案:

没有答案