Algolia指数结构设置

问题描述 投票:0回答:1

我是Algolia的新手,在索引时我对如何构建数据感到困惑。

我的本地数据库中有两个名为“Films”和“Categories”的模型,它们通过数据透视表连接来管理多对多关系。

我希望用户能够通过电影标题进行搜索,然后将类别作为过滤器,但我也希望用户能够浏览类别。

如果我创建两个名为Films and Categories的索引,它们将如何相关? algolia如何知道哪些电影属于哪些类别?

文档似乎不清楚:https://www.algolia.com/doc/guides/indexing/structuring-your-data/

谢谢

Ben

php indexing algolia
1个回答
0
投票

在你的情况下你想要的是搜索Film。您必须将索引视为非关系数据库,以便您搜索唯一的实体。它与关系数据库非常不同,并没有起到同样的作用。

所以你不需要创建两个索引,只需要一个包含Film数据的索引(作为名称,描述......)和电影类别。

您的数据结构应如下所示:

[
  {
    "name": "A Movie",
    "categories": [
      "Comedy",
      "Action"
    ]
  },
  {
    "name": "Another Movie",
    "categories": [
      "Horror",
      "Action"
    ]
  }
]

这里namecategories可以是可搜索的属性。而categories将是一个方面,允许您按类别过滤。

© www.soinside.com 2019 - 2024. All rights reserved.