6.5商品详细页的业务逻辑
商品详细页分为三个板块:商品基本信息、热销商品和商品详细介绍。
商品基本信息包含了商品图片、名称、价格等信息,热销商品为除本商品外销量前五的商品,详细介绍也保存在商品信息中。因此在视图函数中要获取:1)该商品数据;2)除本商品外销量前5的商品。
同时此页面还要借助 JS 和 ajax 实现三个功能:收藏、加入购物车和选择购买数量。
》收藏功能借助session实现:session记录了用户的收藏商品ID,在视图中获取后判断本商品是否在其中,将结果传递给模板。模板根据结果选择显示已收藏图标还是未收藏图标。模板再使用JS功能实现收藏和取消收藏的功能。
6.6商品详细页的数据渲染
6.6.1收藏功能
(1)模板显示:根据是否收藏选择不同图标
(2)点击图标后,ajax向视图发出处理请求,如果收藏成功,将未收藏的图标改成已收藏的,反之取消收藏也是。
(3)视图函数,处理收藏/取消收藏请求:
(4)效果图:
6.6.2选择购买数量
(1)模板显示:减少功能+文本框+增加功能:
(2)JS实现加减功能(可以获取该商品的存货,在增加中限制最大值)
6.6.3加入购物车
将文本框中的购买数量quantity和该商品的id提交给购物车页面。
window.location实现URL请求