2009-07-14 6 views
0

Hypothétiquement, j'ai un modèle de pièce qui appartient à un modèle de construction. Buildings a une relation has_many avec les catégories. J'essaye de comprendre comment indexer le modèle de pièce de sorte qu'une recherche pour category_id = 1 retournera n'importe quelle pièce, dans n'importe quel bâtiment qui a cette catégorie assignée. Encore une fois, un bâtiment peut avoir plusieurs catégories.Sphinx associé à la searcing has_many avec thinkingsphinx

merci!

Répondre

6

Tout d'abord, vous voulez configurer votre index quelque chose comme ce qui suit dans votre modèle Post:

define_index do 
    # fields go here 

    # the important attribute for your filter: 
    has building.categories(:id), :as => :category_ids 
end 

En ce qui concerne la recherche:

Room.search 'query', :with => {:category_ids => 1} 

Laissez-moi savoir si ce n'est pas tout à fait ce que vous cherchez.

Questions connexes