0

セクション ID の配列を整数として格納します。event.sections #=> ["1","115","130"] Events 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"

これは適切な select ステートメントです。

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

4

0 に答える 0