在我的Rails应用中,我有一个名为项目的模型,项目有人旋转。我正在使用gem acts_as_taggable_on来让用户为他们的Spins添加标签。
我希望能够按标签过滤项目,因此如果项目有任何包含特定标记的旋转,我想在搜索结果中返回该项目。
我知道我可以使用以下内容搜索具有特定标记的Spins:
Spin.tagged_with("LEGO")
如何进行相关搜索,例如
Project.find(1).spins.where(:tagged_with => "LEGO")
(这不起作用,因为没有Spins的tagged_with属性 - acts_as_taggable_on为标签添加了一个单独的表。)
答案 0 :(得分:1)
Project.joins(:spins).where('spins.id IN (?)', Spin.tagged_with("LEGO").select(:id))