用户浏览记录的添加

  • 什么时候添加历史浏览记录?
  • 在商品详情的视图里面添加浏览记录,
  • 之前使用的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. linux环境java程序cpu爆表问题查证

    1.top命令查找导致cup爆表的进程 2. top -H -p10832 (10832是Java进程的PID)命令找出了具体的线程 3.使用用命令 jstack 10832> jstack.t ...

  2. LeetCode——560. 和为K的子数组

    给定一个整数数组和一个整数 k,你需要找到该数组中和为 k 的连续的子数组的个数. 示例 1 : 输入:nums = [1,1,1], k = 2 输出: 2 , [1,1] 与 [1,1] 为两种不 ...

  3. 堆排序算法以及python实现

    堆满足的条件:1,是一颗完全二叉树.2,大根堆:父节点大于各个孩子节点.每个节点都满足这个道理.小根堆同理. parent = (i-1)/2    #i为当前节点 left = 2*i+1 righ ...

  4. Java 实现 栈

    package Test; import java.util.*; public class Stack_test { public static void main(String[] args) { ...

  5. 微信小程序2048开发进度(二)

    对小程序首先进行游戏架构: 实现小程序的首页展示界面,初始化棋盘格,以及NEW GAME按钮,成绩展现.

  6. 使用Anaconda安装TensorFlow

    conda create -n tensorflow python=2.7 # or python=3.3, etc. pip install --ignore-installed --upgrade ...

  7. 注册服务和发现服务 Eureka

    来自蚂蚁课堂: 注册服务和发现服务 1.原理如图: 注册中心负载均衡: 实践 注册中心 集群:

  8. drf中的jwt使用与手动签发token、校验用户

    jwt认证 1)session存储token,需要数据库参与,耗服务器资源.低效2)缓存存token,需要缓存参与,高效,不易集群3)客户端存token,服务器存签发与交易token的算法,高效,易集 ...

  9. 八皇后问题 2n皇后问题

    Description 会下国际象棋的人都很清楚:皇后可以在横.竖.斜线上不限步数地吃掉其他棋子.如何将8个皇后放在棋盘上(有8 * 8个方格),使它们谁也不能被吃掉!这就是著名的八皇后问题. 对于某 ...

  10. 洛谷P1525 关押罪犯(并查集、二分图判定)

    本人蒟蒻,只能靠题解AC,看到大佬们的解题思路,%%%%%% https://www.luogu.org/problemnew/show/P1525 题目描述 S城现有两座监狱,一共关押着N名罪犯,编 ...