Witam,
Korzystam z pluginów Searchlogic oraz acts_as_taggable_on. Aby Searchlogic przeszukiwał model “Items” który zawiera “acts_as_taggable_on :tags” dopisałem własny named_scope:
named_scope :tagged_with_on_tags, lambda { |tag|
options = { :on => :tags }
find_options_for_find_tagged_with(tag, options)
}
Dzięki temu działa metoda “Item.tagged_with_on_tags()” przeszukująca po tagach.
Chciałbym natomiast przeszukiwać bazę najpierw po nazwie, następnie po tagach, a później po kategoriach (Item has_and_belongs_to_many :categories).
Mówiąc jaśniej chciałbym aby wyniki były zwracane według podanej wyżej kolejności tj. najpierw te gdzie szukana fraza znajduje się w nazwie rekordu, później w słowach kluczowych, a następnie w kategoriach.
Niestety napotkałem problem:
- chcąc wyciągnąć wszystko jednym zapytaniem (da się tak dla powyższego przypadku?) nie działa mi opcja “OR” która jest opisana w dokumentacji pluginu (http://github.com/binarylogic/searchlogic) czyli połączenie np. Item.tagged_with_on_tags_or_name_like(“costam”).
Czy ktoś ma pomysł na rozwiązanie powyższych problemów?