我想将Algolia与node.js猫鼬集成在一起,但目前仍在下一步。
我正在遵循此软件包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'
})
我将不胜感激前进。
答案 0 :(得分:0)
mongoolia插件的目标是使您现有的mongo数据库与Algolia索引保持同步。您将始终将mongo数据库保留为数据的真实来源,但是它的内容也将被复制到Algolia中,并用于前端搜索。每当在mongo中添加/编辑/删除对象时,也会在Algolia中添加/编辑/删除对象。
安装好此部分后(您可以在Algolia仪表板UI中检查所有记录是否正确存在),则必须创建(或替换)前端搜索。
Algolia的工作方式是让您的用户在您的网站上进行的搜索直接针对Algolia API,而不是针对您的后端。 Algolia还提供了一个名为InstantSearch的JavaScript库,该库允许您使用预定义的小部件(例如lego积木)来构建UI。您将在搜索栏中找到一个,在结果,分页,过滤器等中找到一个。它们将保持同步,并且都针对您的Algolia应用程序?
简而言之,mongoolia是实现的第一部分(为数据建立索引),然后需要为第二部分使用InstantSearch(搜索数据)。
希望有帮助