2012-12-12 11 views
5

Ich versuche, eine Suche durchzuführen, die Ergebnisse nach dem Zufallsprinzip, und nur eine Reihe von Ergebnissen, nicht alle Übereinstimmungen. So etwas wie Limit (2) Ich habe versucht, die Solr param ‚Zeilen‘ verwenden, aber das scheint nicht, etwas zu tun:Rails solr Suchlimit insgesamt Suchergebnisse/fixe Anzahl der Ergebnisse

@featured_articles = Article.search do 
    with(:is_featured, true) 
    order_by :random 
    adjust_solr_params do |params| 
    params[:rows] = 2 
    end 
end 

@ featured_articles.total 2 sein soll, aber es gibt mehr als 2

Wie kann ich eine randomisierte feste Anzahl von Ergebnissen erhalten?

Antwort

0

Alle Rubin Beispiel ..

@featured_articles = Article.search do 
    with(:is_featured, true) 
    order_by :random 
end.shuffle.take(2) 

Wenn Sie nicht Solr benötigen, je Auf Ihrer Datenbank können Sie auch Folgendes tun: Article.where(is_featured: true).order("RANDOM()").limit(2)

Verwandte Themen