1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/kennylee-elasticsearch-js

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

ElasticSearch

Класс инструментов для реализации запросов в ElasticSearch на стороне клиента

Пример можно увидеть в файле demo.html (src/html/demo.html).

Описание запроса

  • Если пользователь вводит несколько условий поиска, то их следует разделять пробелами. Однако если в самом запросе есть пробелы, то такие слова необходимо заключить в двойные кавычки («»).
  • В запросе поддерживается операция «не», например: -广州, что означает исключить результаты, содержащие слово «Гуанчжоу».

Например:

中国 广州 -女 "hello world" -"one two"

Запрос состоит из пяти условий: 1 — Китай; 2 — Гуанчжоу; 3 — «hello world» — обязательный элемент, но результаты с «女» и «one two» исключаются.

Инструменты

ElasticSearch

Класс инструментов ElasticSearch:

/**
 * Возвращает экземпляр QueryBody, представляющий тело запроса.
 *
 * @param text Текст, введённый пользователем.
 * @param types Необязательно, указывает тип документа для запроса (type).
 * @returns QueryBody Возвращает экземпляр QueryBody.
 */
getQueryBody: function (text, types)

QueryBody

Объект запроса:

/**
 * Устанавливает диапазон запроса.
 *
 * @param prop Имя поля диапазона.
 * @param gte Больше или равно.
 * @param lte Меньше или равно.
 * @returns {QueryBody}
 */
setRange: function (prop, gte, lte)

/**
 * Устанавливает обязательные условия поиска.
 *
 * @param prop Имя поля поиска.
 * @param query Поле поиска.
 * @param isPhrase Указывает, является ли это совпадением фразы.
 * @param operator Логический оператор, and или or.
 * @returns {QueryBody}
*/
addMust: function (prop, query, isPhrase, operator)

/**
 * Устанавливает условия поиска «не».
 *
 * @param prop Имя поля поиска.
 * @param query Поле поиска.
 * @param isPhrase Указывает, является ли это совпадением фразы.
 * @param operator Логический оператор, and или or.
 * @returns {QueryBody}
 */
addMustNot: function (prop, query, isPhrase, operator) {

/**
 * Возвращает объект JSON.
 *
 * @returns {}
 */
toJSON: function ()

/**
 * Задаёт типы документов для поиска.
 *
 * @param types Массив.
 * @returns {QueryBody}
 */
setTypes: function (types)

/**
 * Определяет начальную запись для поиска.
 *
 * @param index
 * @returns {QueryBody}
 */
setStartIndex: function (index)

/**
 * Определяет размер страницы для поиска.
 *
 * @param size
 * @returns {QueryBody}
 */
setPageSize: function (size)

/**
 * При поиске устанавливает свойства источника для фильтрации.
 *
 * @param arr Массив.
 * @returns {QueryBody}
 */
setExcludesProps: function (arr)

/**
 * Преобразует объект JSON в строку.
 *
 * @returns String
 */
toString: function ()

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Фронтенд-инструменты Elasticsearch. В отличие от официального Elasticsearch-JS, основной упор делается на поиск при как можно более низкой стоимости обучения. Развернуть Свернуть
BSD-3-Clause
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/kennylee-elasticsearch-js.git
git@api.gitlife.ru:oschina-mirror/kennylee-elasticsearch-js.git
oschina-mirror
kennylee-elasticsearch-js
kennylee-elasticsearch-js
master