Сортировать разные группы, используя разные порядки сортировки в solr - PullRequest
8 голосов
/ 29 марта 2012

Мы используем solr для создания приложения электронной коммерции, и у нас есть продукты, сгруппированные по подкатегориям внутри родительской категории. Мы используем динамический порядок сортировки, чтобы определить, где товар принадлежит подкатегории, и один и тот же товар может появляться в нескольких подкатегориях. Мы отслеживаем порядок сортировки, используя динамическое поле, и каждый продукт имеет несколько заказов на сортировку в зависимости от того, к какой подкатегории он принадлежит. Нам нужно сгруппировать эти продукты в подкатегории и отсортировать их, используя соответствующий порядок сортировки. Пример ниже, любая помощь будет принята с благодарностью, и мы пытаемся выполнить ее с помощью одного запроса.

  • джинсы
    • Bootcut
      • Product1
      • Product2
    • Тощий
      • Product1
      • Product3

Продукты имеют следующий порядок сортировки

  • Product1-bootcutSortOrder-10 skinnySortOrder-1
  • Product2-bootcutSortOrder-3
  • Product3-skinnySortOrder-5

Ожидаемый результат с учетом порядка сортировки по возрастанию в каждой группе

  • Bootcut
    • Product2
    • Product1
  • Тощий
    • Product1

Мы хотим, чтобы solr сортировал каждую группу по порядку сортировки - group.query = {подкатегория: Bootcut} & group.sort = bootcutSortOrder asc & group.query = {подкатегория: Skinny} & group.sort = skinnySortOrder asc

Что делает solr, так это сортировка по комбинации bootCutSortOrder asc и skinnySortOrder asc.

Можно ли в solr отсортировать каждый раздел группы по своему порядку сортировки?

Мы используем последнюю версию Solr и отлично ладим с Solr 4.

1 Ответ

1 голос
/ 05 марта 2013

Если я правильно понял ваше объяснение, я думаю, что вы ищете Многогранный поиск .

К счастью, Lucene & Solr поддерживают это. Вы можете сослаться на следующее ..

Solr Faceted Search

Lucene Faceted Search

Еще один в Люцене Поиск:

...