部分页面的隐藏和展示
- 根据页面中是否存在cookie,即是否登录,来显示或隐藏指定的内容
- 方法根据,如果登录且在有效时间内,那么可以拿到用户表的信息,直接判断是否存在用户的信息。
- 可以在后端判断,也可以在前端判断
头像的显示
- 前端判断
- {% if user.id %}{{user.icon}}{% else %}头像不显示展示的东西{% endif %}
数据的显示
- 后端判断
- if user.id 判断是否登录
- 拿到数据库里存储的数据,传入前端,登录了就有数据,否则传入空数据
常用jinja2语言的使用
- for
- if
- ifequal
- forloop
- {{forloop.counter0}}
- {{forloop.counter1}}
- {{forloop.recounter}}
- {{forloop.recounter0}}
- 过滤器 |
(1) | add:10
(2) | date: ‘y-m-d h:m:s’
(3) | upper/lower
(4) | widthradio
* {% widthratio stu.stu_math 1 10 %} 乘以10
(5) | divisibleby:2 整除2
购物车 订单表 和闪购页面商品数据的关系梳理
- 购物车表 关联 用户表 和 商品表
- 订单详情表 关联 商品表 和 订单表(关联用户表)
- 当我们点击闪购页面的添加商品时,(ajax方法)
- 如果登录了,查询数据库,查看购物车里是否已经有这个商品的信息了,如果有就商品数加一,如果没有就新建这一条信息
- 并在页面渲染出点击的效果
购物车页面,渲染出购物车里的商品的信息,并显示是否选中这一条信息。ajax方法
- 如果点击,就改变数据里购物车表里的选中状态,并在页面里渲染出来
- 全选按钮,点击改变数据库里购物车表的信息,并渲染出来
点击下单,
- 先写一个过渡方法,创建订单表,订单详情表,清空购物车里对应的商品,跳转到渲染支付页面的方法中
- 支付方法,拿到订单表的信息,跳转到支付页面,支付跳转到我的主页。
- 点击支付按钮,这里可以放入微信的支付接口
- 支付成功,跳转到个人中心,显示出待收货和待支付的接口,点击,可以跳转到对应的方法逻辑中
- 待付款事件逻辑,把订单表里待付款的商品信息返回到页面中
- 待收货事件逻辑,把订单表里待收货的商品信息返回到页面中。