数据库设计:

1、商品表

2、商品和属性的关系表

3、属性表

4、属性值表

5、商品和属性值的关系表

6、SKU表

大概关系如下:

根据实际需要,增删表结构

我们后台管理系统中需要实现的效果图如下:

后台代码重点逻辑

如何将属性和属性值,如图排列显示,这里我们用到递归排序的方法

    private $index=0;//属性值组合public function combineAttributes($attr){$m_len = count($attr);if($m_len >= 2){$result = $this->recurse($attr[$this->index],$attr[++$this->index],$m_len,$attr);}else{$result = $attr[0];}foreach ($result as $k=>$v){$result[$k] = explode(",",$v);}return $result;}//属性名 递归拼接属性public function recurse($array1,$array2,$m_len,$attr){$res = array();foreach ($array1 as $a1){foreach ($array2 as $a2){array_push($res,$a1.','.$a2);}}$this->index++;if($this->index <= $m_len-1){return $this->recurse($res,$attr[$this->index],$m_len,$attr);}else{return $res;}}

将拼接好属性值组合存入sku表中,这样每种搭配对应的价格,库存都是不一样的

前端实现随机点属性值组合,传给后端获取对应的库存和价格,代码思路如下:

 //type=1是单规格,type!=1是多规格<view class="spec" wx:if="{{product.arrGoodsSku.type=='1'}}"><view class="name">产品规格</view><view class="list"><view class="type {{selectId===item.id?'type-active':''}}" wx:for="{{product.arrGoodsSku.data}}" wx:key="index" bindtap="selectType" data-id="{{item.id}}">{{item.color}}</view></view></view><view class="spec" wx:if="{{product.arrGoodsSku.type!='1'}}" wx:for="{{product.arrGoodsSku.data}}" wx:key="index" wx:for-item="dataitem" wx:for-index="dataindex"><view class="name">{{dataitem.name}}</view><view class="list"><view class="type {{selectId[dataindex]===item.id?'type-active':''}}" wx:for="{{dataitem.attr_val}}" wx:key="index" bindtap="selectType" data-id="{{item.id}}" data-dataindex="{{dataindex}}">{{item.name}}</view></view></view>
  async selectType(e) {      let id = $attr(e, 'id');      //获取到当前点击的父级的下标let dataindex = parseInt($attr(e, 'dataindex'));//获取到的id存入数组this.data.skuarr[dataindex] = id//把数组转换成字符串let stringsku = this.data.skuarr.join(',');}

参考思路:https://www.lovchun.com/posts/83089735-9b7e-4d49-bc98-43cd243e226e.html

商城后台添加多规格属性相关推荐

  1. 自定义商品分类,选择分类之后,添加商品附属性;仿淘宝后台添加商品附属性的价格和数量

    效果图(图片较大,加载较慢) 页面部分: <div class="layui-form-item" id="add_attribute"><l ...

  2. Java实现校园商城后台管理系统

    1.校园商城后台管理系统背景 本系统模拟商城系统开发的校园商城后台管理系统. 2.校园商城后台管理系统技术架构 主要技术 Spring.SpringMVC.Mybatis JSP.JSTL.jQuer ...

  3. html添加商品规格,商品SKU插件( HTML版)

    data: function() { //alert(document.getElementById('seach').value) var specs = [ { "name": ...

  4. PHP:【商城后台管理系统】部署角色管理,角色添加,菜单权限,删除角色功能

    PHP:[商城后台管理系统]部署角色管理,角色添加,菜单权限,删除角色功能 一.角色管理界面 ①首页 ②角色添加 ③角色编辑 ④角色删除 二.部署流程 部署流程 后端采用thinkphp6.0框架,角 ...

  5. 谷粒商城--SPU和SKU(属性分组、规格参数、销售属性)

    属性分组.规格参数 SPU和SKU 规格参数和销售属性 表的关系理解 导入前端代码 完善后端接口 接口开发流程 什么是开发接口? 开发思路 属性分组详情 显示属性分组 属性分组回显 规格参数详情 保存 ...

  6. 商城后台管理系统之普通查询_分页查询_商品的添加,单个删除,批量删除

    一.MVC开发模式和JavaEE经典三层结构 1.JSP开发模式一: jsp(接收请求,响应请求,展示数据)+javabean(处理业务逻辑) javaBean:可复用的java组件 -user -u ...

  7. Magento后台添加商品属性集属性集详细教程

    第一步进入属性列表页: 第二步点击Add New Attribute进入属性添加页面: 第三步按照下面样式填写: 然后点击Save Attribute保存,然后列表页中就新加了该属性: 第四步进入属性 ...

  8. 【javaWeb微服务架构项目——乐优商城day05】——商品规格参数管理(增、删、改,查已完成),SPU和SKU数据结构,商品查询

    乐优商城day05 0.学习目标 1.商品规格数据结构 1.1.SPU和SKU 1.2.数据库设计分析 1.2.1.思考并发现问题 1.2.2.分析规格参数 1.2.3.SKU的特有属性 1.2.4. ...

  9. 视频教程-vuecli实战商城后台管理系统-Vue

    vuecli实战商城后台管理系统 帝莎学院创始人&CEO,目前主要从事全栈开发.Python.PHP.小程序.App.Web等技术的研究和开发.专注于实战类教程,授课风趣幽默,讲解条理清晰.通 ...

最新文章

  1. redis 主从切换
  2. 编程珠玑第七章 粗略估算
  3. OWIN的理解和实践(三) –Middleware开发入门
  4. 做能及之事,过平淡的日子,烦事多忘,好事多为
  5. 单点登录原理与简单实现【转载】
  6. L1-003 个位数统计 (15 分)—团体程序设计天梯赛
  7. (DevExpress2011控件教程)ASPxGridView 范例3 :ASPxGridView 排序和分组、过滤行、统计功能等功能实现...
  8. 苹果电脑如何设置屏保时间?
  9. LED背光源行业的产业链升级
  10. c语言setlocale第二个参数,关于setlocale函数的参数问题
  11. 数据分析师的职业发展
  12. matlab 画三棱柱,教大家几何画板画出三棱柱图形
  13. android studio 自定义皮肤
  14. 晶振与匹配电容的总结
  15. 流星蝴蝶剑5.18公测(转自官方)
  16. 【雪碧图】url放置图片路径
  17. 【技术面试官如何提问】
  18. 音频-mp3 -> pcm 解码
  19. python excel单元格 剪切清除粘贴复制_Excel复制粘贴时弹出“不能清除剪贴板”的解决方法...
  20. 中国隐私计算行业发展模式与投资机会评估报告2022-2028年版

热门文章

  1. 项目建设方案的基本元素
  2. SQL count详细用法
  3. Remote Procedure Calls
  4. 《大数据实时处理》学生学期总结
  5. PostgreSQL 源码解读(160)- 查询#80(如何实现表达式解析)
  6. 5分绩点转4分_4分绩点与百分制转换方法
  7. 解决win7无法打开chm格式文件的问题
  8. 中国支付结算体系全貌
  9. html中点击文字变色,html选中文字 背景/字 变色
  10. excel用条件格式设置隔行变色