Как использовать Algolia с узлом мангусты js? - PullRequest
0 голосов
/ 23 июня 2018

Я хочу интегрировать Algolia с node.js mongoose, но в данный момент не могу понять, что делать дальше.

Я слежу за документацией по этому пакету https://github.com/algolia/mongoolia, но в настоящее время теряюсь над тем, что делать дальше, чтобы сделать запрос к моей базе данных и выполнить поиск.

Это мой код:

var mongoose = require('mongoose');
const mongoolia = require('mongoolia').default;
var algoliasearch = require('algoliasearch');

//meme schema
var meme = require('../app/model/meme');

const TagSchema = new mongoose.Schema({
  tagarray: { type: String, required: true, algoliaIndex: true },
});

TagSchema.plugin(mongoolia, {
  appId: 'xx',
  apiKey: 'xx',
  indexName: 'test1'
}) 

Буду признателен за любую помощь в продвижении вперед.

1 Ответ

0 голосов
/ 18 июля 2018

Цель плагина mongoolia - синхронизировать существующую базу данных mongo с индексом Algolia. Вы всегда будете хранить свою базу данных Mongo в качестве источника правды для ваших данных, но ее содержимое также будет реплицировано в Algolia и использовано для внешнего поиска. Всякий раз, когда объект будет добавлен / отредактирован / удален в Монго, он также будет добавлен / отредактирован / удален в Алголии.

Как только эта часть будет на месте (вы можете проверить в своем пользовательском интерфейсе панели управления Algolia, чтобы убедиться, что все ваши записи там есть), вам нужно будет создать (или заменить) ваш интерфейсный поиск.

Принцип работы Algolia заключается в том, что поисковые запросы, выполняемые вашими пользователями на вашем веб-сайте, напрямую нацелены на API Algolia, а не на бэкэнд. Algolia также предоставляет библиотеку JavaScript под названием InstantSearch , которая позволит вам создавать свой пользовательский интерфейс с использованием предопределенных виджетов (например, кубики lego). У вас будет один для панели поиска, другой для результатов, нумерации страниц, фильтров и т. Д. Все они будут синхронизированы и нацелены на ваше приложение Algolia?

В двух словах: mongoolia - это первая часть реализации (индексация данных), тогда вам нужно использовать InstantSearch для второй части (поиск данных).

Надеюсь, это поможет

...