首页 > 解决方案 > Laravel 规范搜索

问题描述

我正在建立电子商务网站,我想问一下搜索产品规格的最佳方法是什么。我在数据库中有一个字段,其规格可以存储为 json 或 php 数组。是否有任何教程可以用来输出唯一规范例如类别 CPU,并将不同的 CPU 品牌放在该类别下,以便用户可以决定将哪个规范添加到搜索过滤器。为了给你一个视角,我想做这样的事情

Amazon.com 搜索字段图片

标签: sqljsonlaravelsearche-commerce

解决方案


你可以搜索虽然whereJsonContains()方法。

例如;

假设您的表单中有一些过滤器,如下所示

brands
 - intel
 - amd

Number of core
 - 2
 - 4
 - 8

现在让我们构建一个查询以获取过滤结果

Cpu::whereJsonContains("preferences->brand",$request->brand)
    ->whereJsonContains("preferences->noc", $request->noc)
    ->get();

但我不确定在您的数据库中存储这样的 json 数据是否是一种好习惯。因为它不是存储和展示柜,所以会有通用结果取决于那些规格。


推荐阅读