问答

商品列表显示商品分类

作者:admin 2021-04-22 我要评论

分类 id name parent_id 1 A 0 2 B 1 3 C 2 数据库这样的分类,现在商品选择了分类之后c,要在商品列表显示出分类为 A/B/C 这样的效果,如何设计合理 如果在分类...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)

分类 id name parent_id

  1   A     0
  2   B     1
  3   C     2
  

数据库这样的分类,现在商品选择了分类之后c,要在商品列表显示出分类为 A/B/C 这样的效果,如何设计合理

如果在分类表存A/B/C这样的一个字段,那么修改一个分类名就会有很多条记录修改,不合理
如果在查询商品时再去查询也不合理
(分类会很多,商品列表也可能很多)

###

分类修改不是一个经常性的操作,至于数量多少并不是考虑的重点
增加 路径字段 A/B/C,修改时的批量 UPDATE 相比带来的便利性是可以接受的

###

对分类表而言:
分类表中需要添加一个字段, 记录分类id的路径,比如对C分类而言记录1/2/3, 对B分类记录1/2, 对A而言记录1.
这样无论分类如何变化,都是不需要动分类表的.

对商品表而言:
因为要在商品列表中显示分类, 最好是在获取商品列表的时候,不再查询分类表,不然挺烦的.
因此, 在设置商品分类的时候(比如选择C分类),将C分类的id记录下来, 同时也可以添加冗余字段,将要显示的分类(比如C分类), 则将A/B/C记录下来.
这样虽然会出现一些分类数据不准确的情况, 但是对分类而言, 修改分类本身是小概率的事情,出现一些误差其实也没什么大问题.
在访问商品详情时,为获取更准确的分类信息, 则可以通过分类id查询分类表获取, 这是一个比较简单的操作.如果一定要追求列表分类的准确性,这一步其实有文章可做, 对比分类是否一致,如果不一致, 接下来(日志记录或者异步任务进行更新)...

总之需求和实现之间总得会有一些妥协

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • 商品列表显示商品分类

    商品列表显示商品分类

  • mongodb lookup查询溢出问题

    mongodb lookup查询溢出问题

  • 电子签章: 数字签名过后的PDF,导入根

    电子签章: 数字签名过后的PDF,导入根

  • 正则在windows 可以匹配到,linux 匹配

    正则在windows 可以匹配到,linux 匹配

腾讯云代理商
海外云服务器