2013-01-11 16 views
8

Mam następujący pg_search zakresie na moim modelu stories.rb:Jak usunąć ranking wyników zapytania

pg_search_scope :with_text, 
        :against => :title, 
        :using => { :tsearch => { :dictionary => "english" }}, 
        :associated_against => { :posts => :contents } 

chcę kwerendy powrotu wyniki ignorując wszelkie rankingu (dbam tylko o dacie story zostało ostatnio zaktualizowane zamówienie DESC). Wiem, że jest to łatwe pytanie dla większości osób, które je przeglądają, ale jak wyłączyć kolejność w pg_search?

Odpowiedz

22

Jestem autorem pg_search.

Można zrobić coś takiego, który wykorzystuje ActiveRecord::QueryMethods#reorder

MyModel.with_text("foo").reorder("updated_at DESC") 
+3

doskonała. Dzięki! BTW, nie potrzebował '.reorder.order (" updated_at DESC ")'. Potrzebne tylko '.reorder (" updated_at DESC ")' –

+0

Cool! Zaktualizowałem moją odpowiedź. – nertzy

+0

Dzięki, to było dla mnie bardzo przydatne. Czy w ogóle można użyć pola published_at? Pytanie tutaj: http://stackoverflow.com/questions/21604862/pg-search-how-to-order-by-published-at-field-in-multisearchable – Ben