美文网首页go语言
22-Beego优选加入购物车

22-Beego优选加入购物车

作者: 梦想成为小仙女 | 来源:发表于2019-02-11 14:07 被阅读34次

    如果要将物品加入购物车,要记录物品id,数量,总价,并将这些临时数据传递到数据库,保存起来,然后,从数据库获取加入购物车商品的数据,显示在购物车页面上,这里我们认为加入数据库的数据是临时数据.所以适合保存在内存中或者cookie中

    效果图.gif

    0.逻辑注意点

    将用户加入购物车的数据存储起来
    1.购物车的数据需要和当前登录的用户关联起来;
    2.一般情况下购物车的数据可以通过cookie/Redis来存储;
    3.由于用户不是唯一的,建议用用户的Id来查询用户
    4.一定要注意必须先登录才能通过session获取用户名
    5.Redis链接地址错误

    image.png
    要用ipconfig -all查询外界访问本机的ip地址,默认接口是6379
    6.Redis存储哈希数据
    image.png
    image.png
    由于一个用户的购物车对应一个哈希表,哈希表就相当于字典,如果key不可以重复,所以如果是同一个商品,第二种方法能够确保同意商品只能加入购物车一次

    1.编程技巧

    对于JS代码,复杂的情况下,先在操作元素下面写,最后再移动到一个文件中去

    2.新知识点

    1.ajax:


    image.png

    2.beego返回JSON格式


    image.png

    3.url

    http://hemin.cn/jq/jQuery.ajax.html

    4.bugs

    1.ajax方法调用不正确


    image.png
    image.png

    2.a标签添加点击事件重复跳转


    image.png
    image.png

    5.语法注意点

    image.png

    会话传递过来的数据是interface{}类型,要断言强制转化为字符串类型,因为在数据库中该字段是字符串类型

    一.Ajax数据交互

    1.监听添加购物车按钮的点击


    image.png

    2.添加埋点传递商品Id


    image.png
    3.修改a标签
    image.png

    4.添加route


    image.png
    5.Ajax GET方法传值
    image.png
    会将对象转换为url后面的参数,这就是ajax传值

    二.Redis存储数据

    1.获取传递过来的数据
    2.创建传递数据的字典
    3.判断用户登录是否成功(会话请求成功)
    4.失败:
    设置回传状态码,回传错误提示
    5.成功:
    5.1查询用户
    5.2建立Redis链接
    5.3关闭链接
    5.4存储数据
    5.5存储失败:设置回传状态码和回传错误提示
    5.6存储成功:求当前用户键对应的值的个数
    5.7将回传的字符串强制转换为整数
    5.8.设置回传状态码,回传错误提示
    5.9设置回传该用户购物车中的商品数目
    6.回传字典
    7.将该字典强制转换为JSON格式数据
    8.设置路由
    9.页面显示数据


    image.png
    image.png
    image.png
    image.png image.png

    相关文章

      网友评论

        本文标题:22-Beego优选加入购物车

        本文链接:https://www.haomeiwen.com/subject/racgsqtx.html