用户浏览记录的添加

  • 什么时候添加历史浏览记录?
  • 在商品详情的视图里面添加浏览记录,
  • 之前使用的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. 吴裕雄--天生自然MySQL学习笔记:MySQL 导入数据

    1.mysql 命令导入 使用 mysql 命令导入语法格式为: mysql -u用户名 -p密码 < 要导入的数据库数据(runoob.sql) 实例: # mysql -uroot -p12 ...

  2. vi粘贴代码后格式混乱的问题

    最近在远程终端使用vi发现从其他地方复制代码的后,粘贴到vi里面出现格式变乱的问题. 主要是因为终端通常无法区分输入是来自用户输入还是来自粘贴,所以终端也不能通知 vim 输入来自何处.在 vim 里 ...

  3. Java并发分析—synchronized

    在计算机操作系统中,并发在宏观上是指在同一时间段内,同时有多道程序在运行. 一个程序可以对应一个进程或多个进程,进程有独立的存储空间.一个进程包含一个或多个线程.线程堆空间是共享的,栈空间是私有的.同 ...

  4. PAT A1001-A1004

    题集通道:https://pintia.cn/problem-sets/994805342720868352/problems/type/7 A1001 :  A+B Format (20 point ...

  5. 扫描转换算法——DDA、中点画线画圆、椭圆

    我的理解:在光栅图形学中,由于每一个点的表示都只能是整数值,所以光栅图形学实际只是对对实际图形的近似表示. 数值微分法(DDA):以下PPT截图来自北京化工大学李辉老师 代码实现: import ma ...

  6. h5-钟表动画案例

    1.html代码 <div class="clock"> <div class="line line1"> <div class= ...

  7. PAT Advanced A1104 Sum of Number Segments (20) [数学问题]

    题目 Given a sequence of positive numbers, a segment is defined to be a consecutive subsequence. For e ...

  8. day60-mysql-正则表达式

    .正则表达式: 8.1 ^ 匹配 name 名称 以 "e" 开头的数据 select * from person where name REGEXP '^e'; 8.2 $ 匹配 ...

  9. c#学习笔记04——ADO.NET

    ADO.NET结构:ADO.NET建立在几个核心类之上,这些类可以分为两组 包含和管理数据的类:DataSet DataTable DataRow DataRelation... 链接数据源的类:Co ...

  10. JavaSE--jdom解析之bom

    参考:http://www.cnblogs.com/findumars/p/3620078.html org.jdom2.input.JDOMParseException: Error on line ...