【发布时间】:2020-02-16 02:57:32
【问题描述】:
我正在建立电子商务网站,我想问一下搜索产品规格的最佳方法是什么。我在数据库中有一个字段,其规格可以存储为 json 或 php 数组。有什么教程可以使用输出独特的规格,例如类别 CPU,并将不同的 CPU 品牌放在该类别下,以便用户可以决定将哪个规格添加到搜索过滤器。为了给你一个视角,我想做这样的事情
【问题讨论】:
-
你有所有表的活动模型吗?您将为此雄辩或数据库查询使用什么?为什么您不将要过滤的内容的规格存储在各个列中?为什么是 JSON?
-
@sibabratswain 我是 Laravel 的新手,如果我错了,很抱歉。我有产品表的产品模型。我将使用 Eloquent 并且我不会将规范存储在各个列中,因为规范(比如模型,内存等)从产品到产品的变化,然后需要为此创建 40 多个字段。我考虑 json 因为我真的不知道,但我认为使用 json 因为我不需要像 php 那样序列化和反序列化它数组,我认为它更快,因为我可以很容易地访问它。但我希望有人能告诉我更好的解决方案。
-
像这样使用 SQL 进行复杂的搜索会非常非常非常慢,我建议使用像 Algolia 这样的服务
-
@Amar 您没有使用 NoSQL DB,因此在 SQL 中进行过滤,如果您有单独的列,则更合适。您可以实现您想要的,但在查询中,将难以处理为 JSON 中的数据。为了简单起见,您需要获取它并在控制器中进行数组过滤操作。
-
@Saly3301 你有这样的 algolia 搜索教程吗?
标签: sql json laravel search e-commerce