2012-03-07 49 views
0

已經整整一天,我正在努力設置Solr來搜索關聯。Rails 3 - 如何在關聯中搜索Solr?

我有一個表照片,這表有一個標籤,如性質城市。這些標籤保存在表標籤。在表中保存有照片標籤photo_idtag_id

當我試圖幫助這個詞性質,我想獲得這個標籤的所有照片的一份聲明中,我嘗試這樣做,這種方式(模式照片):

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

但我沒有得到與標籤的照片...

編輯 - 我協會:

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

photo_tag.rb 
    belongs_to :photo 
    belongs_to :tag 

回答

2

爲什麼在地圖中使用photo_tags而不是photo_tag

也許這應該可以解決這個問題:

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

這個遺憾的是不工作的,我加入到我原來的問題協會 – user984621 2012-03-07 15:38:52

+1

你想使用該協會的名稱可能是'tags',而不是'photo_tags'so你可以嘗試'tags.map {...}'而不是'photo_tags.map {...}' – TimPetricola 2012-03-07 15:52:12

+0

很確定他是對的,使用'tags.map(&:name)',你應該精細。 – Robin 2012-03-07 16:31:56