[英]Sorting elasticsearch by column weight results with tire gem for rails project
[英]Sorting search results with mongoid-elasticsearch gem
我正在嘗試對搜索進行排序。 我正在使用gem mongoid-elasticsearch
搜索。 這是我的模型配置:
class ActivityLog
include Mongoid::Document
include Mongoid::Timestamps
include Mongoid::Elasticsearch
elasticsearch!(
{
wrapper: :load,
sort: [
{ created_at: "desc" }
]
}
)
field :type, type: String
end
此配置不會引起任何錯誤,但是它似乎也不起作用,因為搜索結果是隨機列出的。
我認為我正在根據文檔實施配置:
我的搜索查詢順便說一句是:
ActivityLog.es.search(params[:query], page: params[:page]).results.paginate(per_page: 5, page: params[:page])
您應該刪除數組包裝器:
elasticsearch!(
{
wrapper: :load,
sort: { created_at: "desc" }
}
)
用與Elasticsearch本身相同的方式
ActivityLog.es.search({
body: {
query: {
query_string: {
query: params[:search]
}
},
sort: [
{created_at: {order: "asc"}},
]
})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.