Я создаю страницу категории продукта с Elasticsearch, используемым для агрегатов. Насколько я знаю, ES может выполнять только "_count", "_term" и путем субагрегирования для упорядочения результатов агрегации с помощью DSL.
Мое поле агрегации является строковым полем и не анализируется, но содержит такие документы, как "23 EU, 24 EU, 23 Toddler и т. Д.".
Вот мой фрагмент кода с использованием пакета эластичного компоновщика
"aggs":{
"ProductFilters.Size":{
"terms":{
"field":"ProductFilters.Size",
"size":52,
"order":{
"_term":"asc"
}
}
},
"ProductFilters.Size_count":{
"cardinality":{
"field":"ProductFilters.Size"
}
}
}
однако этот код генерирует такой результат. Я хочу, чтобы результаты генерировались так, как хотелось бы человеку не 10 после 1, а 2.
- 1 молодежь США (38)
- 1 молодежь (3)
- 10 Малыш (3)
- 10 США Малыш (48)
- 11 Малыш (3)
- 2 молодежь США (37)
Возможна ли естественная сортировка по агрегатам с ElasticSearch?