私の問題が些細なものであることはわかっていますが、助けが必要です。
私は関係を持つ2つのモンゴイドクラスを持っていますhas_many
:
class Container
...
has_many: items
...
end
class Item
...
field :date, type => Date
belongs_to: container
...
end
特定の日付にアイテムが入っているすべてのコンテナが必要です。
これは、期待どおりに機能しないスコープです。指定された日付にアイテムを持っているコンテナーとアイテムを持っていないコンテナーの両方を返します。
class Container
...
scope :with_items_on, ->(date){ where(:_id.in => Item.on(date).only(:container_id).distinct(:container_id)) }
...
end
.on(date)
指定された日付のすべてのアイテムを正しく返すスコープです。ありがとう。