rails solr search 限制总搜索结果/获得固定数量的结果
Posted
技术标签:
【中文标题】rails solr search 限制总搜索结果/获得固定数量的结果【英文标题】:rails solr search limit total search results / get fixed number of results 【发布时间】:2012-11-30 12:20:24 【问题描述】:我正在尝试执行搜索,对结果进行随机排序,并且只返回一些结果,而不是所有匹配项。限制(2)之类的东西 我试过使用 Solr 参数“行”,但这似乎没有任何作用:
@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,但它返回超过 2
如何获得随机固定数量的结果?
【问题讨论】:
【参考方案1】:不用调整参数,直接加一行:
order_by :random
rows :2
请看这里:http://wiki.apache.org/solr/CommonQueryParameters
【讨论】:
【参考方案2】:所有 ruby 示例..
@featured_articles = Article.search do
with(:is_featured, true)
order_by :random
end.shuffle.take(2)
如果您不需要 Solr,取决于您的数据库,您也可以这样做:Article.where(is_featured: true).order("RANDOM()").limit(2)
【讨论】:
以上是关于rails solr search 限制总搜索结果/获得固定数量的结果的主要内容,如果未能解决你的问题,请参考以下文章