Algolia 指数结构设置
Algolia indices structure setup
我是 Algolia 的新手,我对如何在索引数据时构建数据感到困惑。
我的本地数据库中有两个模型,分别称为 'Films' 和 'Categories',它们由一个枢轴 table 连接起来以管理多对多关系。
我希望用户能够按电影名称进行搜索,然后将类别作为过滤器,但我还希望用户能够浏览类别。
如果我创建两个名为“电影”和“类别”的索引,它们将如何关联? algolia 如何知道哪些电影属于哪些类别?
文档对此似乎并不清楚:https://www.algolia.com/doc/guides/indexing/structuring-your-data/
谢谢
本
在您的情况下,您想要的是搜索 Film
。
您必须将索引视为允许您搜索唯一实体的非关系数据库。它与关系数据库有很大的不同,并且用途不同。
因此您不需要创建两个索引,只需要一个包含电影数据(如名称、描述...)和电影类别的索引。
你的数据结构应该是这样的:
[
{
"name": "A Movie",
"categories": [
"Comedy",
"Action"
]
},
{
"name": "Another Movie",
"categories": [
"Horror",
"Action"
]
}
]
这里name
和categories
可以是可搜索的属性。
categories
将是一个方面,允许您按类别过滤。
我是 Algolia 的新手,我对如何在索引数据时构建数据感到困惑。
我的本地数据库中有两个模型,分别称为 'Films' 和 'Categories',它们由一个枢轴 table 连接起来以管理多对多关系。
我希望用户能够按电影名称进行搜索,然后将类别作为过滤器,但我还希望用户能够浏览类别。
如果我创建两个名为“电影”和“类别”的索引,它们将如何关联? algolia 如何知道哪些电影属于哪些类别?
文档对此似乎并不清楚:https://www.algolia.com/doc/guides/indexing/structuring-your-data/
谢谢
本
在您的情况下,您想要的是搜索 Film
。
您必须将索引视为允许您搜索唯一实体的非关系数据库。它与关系数据库有很大的不同,并且用途不同。
因此您不需要创建两个索引,只需要一个包含电影数据(如名称、描述...)和电影类别的索引。
你的数据结构应该是这样的:
[
{
"name": "A Movie",
"categories": [
"Comedy",
"Action"
]
},
{
"name": "Another Movie",
"categories": [
"Horror",
"Action"
]
}
]
这里name
和categories
可以是可搜索的属性。
categories
将是一个方面,允许您按类别过滤。