用户浏览记录的添加

  • 什么时候添加历史浏览记录?
  • 在商品详情的视图里面添加浏览记录,
  • 之前使用的list来存储浏览记录,
  • 注意:如果good_id之前已经浏览过了,那就要移除,conn.lrem(history_key, 0, goods_id),0代表移除所有,
  • 然后再在左侧加入, conn.lpush(history_key, goods_id),
  • 只保存5条,conn.ltrim(history_key, 0, 4),只保留这个区间内的元素,

商品详情信息的获取和显示:

获取同一个spu的其他规格的商品:

商品列表页,

  • 这个列表页是先点击一个种类,然后进入这个种类的列表页面,
  • 所以要先验证种类的信息,把种类的id传过来,type_id
  • 还需要一个页码,这是第二个参数,
  • 以那种方式排序,这是第三个参数,
  • 页面的类,django还需要好好的研究一下,
  • from django.core.paginator import Paginator

商品的全文搜索功能:

  • 如果要你自己做,你要怎么实现???
  • 搜索关键字草莓,我们可以在商品里面进行模糊查询,名字或者简介包含草莓都查出来,
  • 但是一般不这么用, 因为like查询效率是很低的,比如百度的搜索,
  • 这就涉及到一个搜索引擎的作用,它可以根据表里面的某些字段,进行关键词的分析,搜索引擎可以对一句话进行分词,比如很好吃的草莓,可以分成很,好吃,草莓,这样分词之后会先查询结果,建立了关键字和表数据的关系,
  • 这样就很快的查出来了,
  • 还有一个全文检索的框架
  • 这个框架可以使用搜索引擎,
  • 所以流程是:
  • 用户通过全文检索框架,然后全文检索框架去使用搜索引擎来搜索,
  • 搜索引擎有很多种
  • 我们使用haystack,这是一个全文检索框架,
  • 它支持始终全文搜索的引擎,whoosh,solr,ES(这是java的)
  • whoosh这是一个纯python编写的,虽然性能比不上es,但是对于小型的站点,whoosh足够使用了,
  • 配合haystack全文检索框架,使用whoosh引擎,来帮助我们做搜索,

  

python-django框架-电商项目-商品模块开发_20191124的更多相关文章

  1. python-django框架-电商项目-订单模块开发_20191125

    python-django框架-电商项目-订单模块开发 提交订单页面: 在购物车中点击提交订单,就应该到达提交订单页面了, 显示: 1,收获地址, 2,支付方式 3,用户购买的商品信息,数量,小计, ...

  2. python-django框架-电商项目-购物车模块开发_20191125

    python-django框架-电商项目-购物车模块开发 商品详情页js代码: 在商品详情页,有加入购物车按钮, 点击加减号可以增加减少,手动输入也可以, 点击加入购物车,就要加过去, 先实现加减的操 ...

  3. python-django框架-电商项目-用户模块开发_20191117

    实现注册的基本逻辑: 1,注册页面 注意:注册页面需要静态文件的支持,另外注册页面是基础基类的, 1,url,路由系统, 2,views,视图系统,还是使用类视图,里面有很多的函数, 2,views. ...

  4. Python Django(WEB电商项目构建)

    (坚持每一天,就是成功) Python Django Web框架,Django是一个开放源代码的Web应用框架,由Python写成.采用了MTV的框架模式,即模型M,模板T和视图V组成. 安装Pyth ...

  5. python-django框架-电商项目-项目部署_20191127

    python-django框架-电商项目-项目部署: uwsgi作为web服务器: 在pycharm中启动项目:使用python manage.py runserver 这个runserver是dja ...

  6. python-django框架-电商项目-首页开发_20191122

    python-django框架-电商项目-首页开发 业务背景: 用户浏览网站一定是先到首页, 没有登陆的话首页内容完全一样,而且是不经常变化的, 一段时间内,有100用户访问,就要有几个用户就要查询多 ...

  7. 小D课堂 - 新版本微服务springcloud+Docker教程_2_04微服务下电商项目基础模块设计

    笔记 4.微服务下电商项目基础模块设计     简介:微服务下电商项目基础模块设计 分离几个模块,课程围绕这个基础项目进行学习             小而精的方式学习微服务 1.用户服务       ...

  8. 电商项目-商品表(spu)、规格表(sku)设计

    之前在工作中,需要实现商品规格功能,做了很长一段时间,现在回过头来整理下设计思路. sku,spu概念: SPU = Standard Product Unit (标准化产品单元),SPU是商品信息聚 ...

  9. 常见电商项目的数据库表设计(MySQL版)

    转自:https://cloud.tencent.com/developer/article/1164332 简介: 目的: 电商常用功能模块的数据库设计 常见问题的数据库解决方案 环境: MySQL ...

随机推荐

  1. UML-架构分析-阶段

    初始阶段:架构概念验证原型--->确定其可行性 细化阶段:因素表.技术备忘录.SAD(软件架构文档) 移交阶段:可能会修改SAD->确保与最终部署版本的一致性 后续进化循环:重温架构性因素 ...

  2. Baes.css

    这个公共样式还不错 html,body,ul,li,ol,img,a,p,div,form,input,h1,h2,h3,h4.h5,h6{ margin: 0; padding: 0; /*盒模型* ...

  3. 冲刺期末阶段一<公文档案流转管理系统>

    今天下午的四节课要求自己完成公文流转管理系统,并规定时间看个人进程,相对来说我对增删改查掌握的不彻底,对项目的逻辑框架不太熟练,所以我感觉今天的进度有点慢.有待继续学习. 完成进度:1.分步骤先理清整 ...

  4. 吴裕雄--天生自然ShellX学习笔记:Shell 流程控制

    和Java.PHP等语言不一样,sh的流程控制不可为空,如(以下为PHP流程控制写法): <?php if (isset($_GET["q"])) { search(q); ...

  5. UML-如何画常用UML交互图?

    1.生命线框图(参与者) 2.消息表达式

  6. ccf-csp 任务调度,回溯算法我觉得ok神**wa了

    #include<iostream> #include<string.h> #include<cmath> #define M 41 #define min(a,b ...

  7. RE数组开多大?

    #include<iostream> using namespace std; ][]; int main() { int n, m; ; i <= ; i++) { a[][i] ...

  8. java中常见的json解析方法、库以及性能对比

    常见的json解析有原生的JSONObject和JSONArray方法,谷歌的GSON库,阿里的fastjson,还有jackson,json-lib. Gson(项目地址:https://githu ...

  9. JavaScript详解(一)

    简介: Javascript是一个脚本语言,弱类型的编程语言,简称js,被称为网站开发的行为.它的作用是增加页面特效.前后台交互以及应用于后台开发.它即可写在HTML的script标签里,也可写在外部 ...

  10. c++语法(2)

    #include<iostream> #include<windows.h> using namespace std; class Parents { public: virt ...