django 关于购物车设计思路

这篇博客介绍了使用Django框架设计购物车功能的思路。包括未登录和登录状态下,加入购物车、修改商品数量、删除购物车记录的操作。同时,详细阐述了购物车列表展示、订单提交后的更新以及商品下架时的处理逻辑,确保购物车数据的准确性和实时性。
摘要由CSDN通过智能技术生成

1.加入购物车
加入购物车插入到库中一条购物记录,同时插入到缓存中,缓存的key是记录的id
未登录状态
用户未登录时点击加入购物车,将productId ,skuId,buyNum 转换成json存到cookie中(同一件商品不同的skuId视为两个商品,相同的skuId和productId视为相同商品数量累加),用户登录成功的时候接收用户的消息将cookie中的商品信息保存到数据库中,然后清空cookie数据(京东)不然会出现登录成功后删除购物车商品然后退出,购物车中显示问题
登录状态
点击加入购物车将long userId,long productId,long skuId,int count 存到库中,相同的productId和skuId 数量累加,不同的skuId新增一条
addToCart(long userId,long skuId,int count); //加入sku到购物车商品
2.修改商品数量
未登录状态
用户未登录时,点击加减数量,根据productId和skuId从cooike中将商品数量进行加减,注意校验cooike中的数量不能小于0,不能大于库存数量
登录状态
用户登录状态时,点击加减数量productId和skuId,userId将用户购物车中某个sku的数量增加或减去differ值,注意校验库存数量
updateAmount(long userId,skuId,int differ,List selectedSkuIds); //将用户购物车中某个sku的数量增加或减去differ值。此方法更新商品后,会根据selectedSkuIds重新计算一遍购物车价格,返回满足条件的优惠券

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值