私は次のモデルを持っています:
アクティビティ.rb
タグ.rb
tagging.rb
タグ付けは、アクティビティとタグの結合モデルです。
2 つ以上のタグを持つアクティビティを検索したいと考えています。レールでこれを行うにはどうすればよいですか?
例えば:
tag1 = クリスマス、tag2 = フロリダ、tag3 = ジョン
存在する場合、tag1、tag2、およびtag3が存在するActivityを見つけたいです。
[編集]
私がやったこと:
tags = [tag1, tag2, tag3]
activities = []
tags.each do |tag|
activities << tag.activities
end
activities.flatten.group_by { |activity| activity.id }
グループ値のサイズのいずれかが tags.size と等しい場合、そのアクティビティにはすべてのタグが含まれます。