Migo商城2.0 商品规格参数的实现(1) 十
先看看一张jd的商品规格的截图吧
分析:
规格参数:
1、同一类商品的规格分类相同
2、同一类商品的规格项一致
3、不同商品的规格参数不同
思路:
第一种方式:
可以把数据保存到表中
表就不画了,单单这个功能所涉及的表:
商品分类表
规格参数-分类表
商品表
规格参数-商品规格参数
规格参数-规格项表
想想就觉得 查询的sql语句比较复杂,需要关联的表很多,会给数据库造成很大压力。不推荐使用此方法
第二种方法:
1、可以把规格分组和规格项使用json数据表示,保存到一个字段中。规格参数模板。
2、添加商品时读取规格参数的模板,根据模板生成表单,供客户输入规格参数。
3、把动态表单中的内容读取出来生成json数据保存到数据库中。
4、展示规格参数时,根据商品id读取规格参数json数据生成html展示到jsp页面
具体实现:
1、 模板如何存储?
a) 存储到数据库
b) 字段不能固定
- Map
- Json 这里选择这种
2、 存储的json结构 以后添加(TODO) 不想打开上个项目单独拿数据了,请原谅我的懒惰!
模板结构
数据库表结构
后台实现
添加mapper:
创建service:
1 | /** |
1 | /** |
选择类目
根据选择的类目进行判断,如果该类目所对应的模板存在,提醒用户已经存在,如果模板不存在,可以创建模板
根据商品的分类id查询tb_item_param表,如果查询到结果说明此模板已经添加
这里js代码改造下,使其更加适合restful格式化:
1 | $.ajax({ |
请求的url:
/item/param/{cid}
参数:
cid
controller:
1 | package com.migo.controller; |
运行测试结果:
今天晚上有点事,耽搁了,就到这里吧,明天继续