使用Algolia索引和搜索记录。
项目描述
kinto-algolia 将记录转发到Algolia,并提供一个 /search 端点来查询索引数据。
安装
pip install kinto-algolia
设置
在 Kinto 设置中
kinto.includes = kinto_algolia
kinto.algolia.application_id = YourApplicationID
kinto.algolia.api_key = YourAPIKey
# List of buckets/collections to show:
kinto.algolia.resources = /buckets/chefclub-v2
/buckets/chefclub/collections/recipes
默认情况下,索引名称以 kinto- 前缀。您可以通过以下方式更改此设置
kinto.algolia.index_prefix = myprefix
用法
创建新记录
$ echo '{"data": {"id": "1008855320", "last_modified": 1523349594783, "title": "kinto", "description": "A database for the web", "_geoloc": {"lng": -73.778925, "lat": 40.639751}}' | \ http POST http://localhost:8888/v1/buckets/example/collections/notes/records \ --auth token:alice-token
现在应该可以使用 Algolia API 来搜索它。
例如,使用快速查询字符串搜索
$ http "http://localhost:8888/v1/buckets/example/collections/notes/search?query=kinto+database" \ --auth token:alice-token
或使用请求体的高级搜索
$ echo '{"insideBoundingBox": "46.650828100116044,7.123046875,45.17210966999772,1.009765625"}' | \ http POST http://localhost:8888/v1/buckets/example/collections/notes/search \ --auth token:alice-token
HTTP/1.1 200 OK
Access-Control-Expose-Headers: Retry-After, Content-Length, Alert, Backoff
Content-Length: 333
Content-Type: application/json; charset=UTF-8
Date: Wed, 20 Jan 2016 12:02:05 GMT
Server: waitress
{
"hits": [
{
"_geoloc": {
"lat": 40.639751,
"lng": -73.778925
},
"_highlightResult": {
"title": {
"matchLevel": "none",
"matchedWords": [],
"value": "Kinto"
}
},
"last_modified": 1523349594783,
"title": "Kinto",
"description": "A database for the web",
"objectID": "1008855320"
}
],
"hitsPerPage": 1000,
"nbHits": 1,
"nbPages": 1,
"page": 0,
"params": "insideBoundingBox=42.124710287101955%2C9.335632324218752%2C41.47360232634395%2C14.403076171875002&hitsPerPage=10000&query=",
"processingTimeMS": 2,
"query": ""
}
自定义索引设置
默认情况下,Algolia从索引记录中推断数据类型。
但是,您可以从集合元数据中的 algolia:settings 属性定义索引映射(即模式)
$ echo '{
"attributesToIndex": ["title", "description"]
}' | http PATCH "http://localhost:8888/v1/buckets/blog/collections/builds" \
--auth token:admin-token --verbose
有关设置的其他信息,请参阅 Algolia官方文档
运行测试
$ make tests
更改日志
1.1.0 (2019-04-26)
升级到algoliasearch 2.0
1.0.0 (2019-02-08)
添加对集合白名单的支持。 (#6)
0.2.0 (2018-07-18)
错误修复
更新Algolia设置。
0.1.1 (2018-06-06)
错误修复
修复重新索引命令。
0.1.0 (2018-04-12)
新功能
在服务器刷新时刷新索引
批量执行插入和删除操作以提高效率
添加心跳
删除桶和集合时删除索引
支持从查询字符串进行快速搜索
支持在集合元数据中从 algolia:settings 属性定义映射
错误修复
仅在存储事务提交时索引记录
如果没有对集合或桶的读取权限,则不允许搜索
修复了在创建集合后启用插件时的空结果响应
内部更改
创建集合时创建索引
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。
源分发
kinto-algolia-1.1.0.tar.gz (15.2 kB 查看哈希值)
构建分发
kinto_algolia-1.1.0-py3-none-any.whl (10.8 kB 查看哈希值)
关闭
kinto-algolia-1.1.0.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 2661a2ceaebbfa41e89f4581c5faf294c9b7c7b172a3685c6eaaacd39bc37f96 |
|
MD5 | 9c80011e49e7b0f075551a14a009a2f5 |
|
BLAKE2b-256 | dce7f075f48b3bfce869ee8c088db6d1ad737d8a5f0ac2a809d1b5191cedb73e |
关闭
kinto_algolia-1.1.0-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 841dae8a2424ee8d1e5574e687d0a90b4250790979f2ee75bcbd32fa16af9fd4 |
|
MD5 | 4f4270039068cc2ce378833b6c45a3b5 |
|
BLAKE2b-256 | 1e61bb56558b11f48b11c81b93d2d107707af97936d4b432458388845267393a |