当前位置:首页 > Web开发 > 正文

4)其他 通过页面搜索框搜索商品信息

2024-03-31 Web开发

项目:电商订购网站

所用到框架:

语言:Python3.6.8 (Django==1.11.1)

数据库: MySql、 redis

任务行列队伍(异步措置惩罚惩罚): celery

漫衍式文件存储: FastDFS或者本地都行

搜索引擎(商品检索): django-haystack 、whoosh

web处事器配置: Nginx+ uwsgi

后台打点: django-admin

实现成果:用户模块,商品相关,购物车相关,订单相关

1. 需求分析 1.1 用户模块

注书页

注册时校验用户名是否已被注册。

完成用户信息的注册。

给用户的注册邮箱发送邮件,用户点击邮件中的激活链接完成用户账户的激活。----- celery +redis

登录页

实现用户的登录成果。

用户中心

用户中心信息页:显示登录用户的信息,包孕用户名、电话和地点,同时页面下方显示出用户比来浏览的商品信息。

用户中心地点页:显示登录用户的默认收件地点,页面下方的表单可以新增用户的收货地点。

用户中心订单页:显示登录用户的订单信息。

其他

如果用户已经登录,页面顶部显示登录用户的信息。

1.2 商品相关

首页-----(静态)-----celery+nginx

动态指定首页轮播商品信息。

动态指定首页勾当信息。

动态获取商品的种类信息并显示。

动态指定首页显示的每个种类的商品(包孕图片商品和文字商品)。

点击某一个商品时跳转到商品的详情页面。

商品详情页

显示出某个商品的详情信息。

页面的左下方显示出该种类商品的2个新品信息。

3)商品列表页

显示出某一个种类商品的列表数据,分页显示并撑持凭据默认、价格、和人气进行排序。

页面的左下方显示出该种类商品的2个新品信息。

4)其他

通过页面搜索框搜索商品信息。-------haystack引擎

1.3 购物车相关

列表页和详情页将商品添加到购物车。

用户登录后,首页,详情页,列表页显示登录用户购物车中商品的数目。

购物车页面:对用户购物车中商品的操纵。如选择某件商品,增加或减少购物车中商品的数目。

1.4 订单相关

提交订单页面:显示用户筹备采办的商品信息。

点击提交订单完成订单的创建。

用户中心订单页显示用户的订单信息。

点击付出完成订单的付出。

技术图片

技术图片

2.性能优化

保举将admin改成xadmin以便于插件开发

发送邮件等耗时操纵使用了Celery任务行列队伍,redis作为操纵的中间件,以节约期待时间

记录登陆成果、购物车成果使用了redis缓存存储

admin可以担任save_model要领,而xadmin没有,所以这里使用将关键数据和缓存数据进行对照,如果不不异就说明页面转变,则开启异步静态化页面

考虑随处事器的内存可能不够存储静态资源,所以给与了FDFS存储静态资源

将首页,详情页面,列表页等所有用户都能看到的界面在第一次访谒之后静态化,以减少数据库的操纵

搜索成果给与了haystack全文检索框架来使用whoosh搜索引擎,在搜索的时候使用jieba分词,能使得搜索更全面和准确

订单解决了并发问题

3.会遇到的困难

1.数据模型成立的时候可能会乱,需要提前想好,图片存储的位置,建议是存在一个统一的文件夹下再进行分类

2.详情页面中的图片的url,在存在于goods下的,,所以需要对url进行改削,或者用偷懒的要领建一个goods文件夹再复制进去照片

3.celery的bug 一部分会来源于你的HOST,可能会被代办代理邮箱处事器认为是一个bad name 一部分来源于windows系统,建议有条件的直接使用Linux(天坑!!!)

4.没有前后端疏散,需要改削的时候会觉得一团糟jq太多了

5. 使用了celery异步缓存首页文件,并且发此刻windows上写文件默认的编码是gbk,所以在win10上部署的时候必然要encoding=‘utf-8‘

6. 付出宝沙箱环境付出不能注册,等有空解决 (天坑!!!)

7.不保举在apps中放入你要的app,这样会使pycharm无法识别,代码提示问题严重

8.伪静态的时候会遇到很多bug,解决要领是直接去ng目录下寻找文件,可能没有显示,但是根文件已经存在,直接改削配置。

9.在web缩放的时候会呈现格局乱的情况(天坑!!!)

4.成就图

技术图片

首页

技术图片

技术图片

用户模块

技术图片

商品详细

技术图片

后台

技术图片

邮件激活

5.源文件

链接:https://pan.baidu.com/s/1cEZ1Yink7yhdfZdvENbtlA
提取码:7h28

Django框架项目-电商web(未前后疏散)

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/30144.html