Ruby on rails 3 Rails 3-如何在关联中使用Solr进行搜索?

Ruby on rails 3 Rails 3-如何在关联中使用Solr进行搜索?,ruby-on-rails-3,solr,model-associations,sunspot-solr,Ruby On Rails 3,Solr,Model Associations,Sunspot Solr,我已经一整天都在努力设置Solr来搜索关联 我有一张表照片,这张表有一个标签,如自然或城市。这些标记保存在表标记中。在表中,photo\u标签保存为photo\u id和tag\u id 当我试图帮助“自然”这个词时,我想得到一个带有此标签的所有照片的声明,我尝试这样做(modelphoto): 但是我没有带标签的照片 编辑-我的关联: photo.rb has_many :photo_tags has_many :tags, :through => :photo_tags ph

我已经一整天都在努力设置Solr来搜索关联

我有一张表照片,这张表有一个标签,如自然城市。这些标记保存在表标记中。在表中,photo\u标签保存为photo\u idtag\u id

当我试图帮助“自然”这个词时,我想得到一个带有此标签的所有照片的声明,我尝试这样做(modelphoto):

但是我没有带标签的照片

编辑-我的关联:

photo.rb
  has_many :photo_tags
  has_many :tags, :through => :photo_tags

photo_tag.rb
  belongs_to :photo
  belongs_to :tag

为什么在地图中使用
photo_标签
,而不使用
photo_标签

也许这可以解决问题:

searchable do
  text :photo_tags do
    photo_tags.map{ |photo_tag| photo_tag.name }
  end
end

不幸的是,这对我来说不起作用,我在我原来的问题关联中添加了你想要使用的关联的名称似乎是
标签
而不是
照片标签
,所以你可以尝试
标签.map{…}
而不是
照片标签.map{…}
非常确定他是对的,使用
标签.map(&:name)
你应该会没事的。
searchable do
  text :photo_tags do
    photo_tags.map{ |photo_tag| photo_tag.name }
  end
end