/Chsc-Shop

基于DjangoRestFramework的商城后端API开发。A Shoping Mall that i call "Cornetto“ based on Django+DRF, which is being developed and was implemented approximately 90%

Primary LanguagePythonApache License 2.0Apache-2.0

Chsc(吃货商城)

本项目架构从0到1,从本地开发到部署到云服务器均单独完成,现开源出来,目的只为共享交流,锻炼自己的编码能力,不得参与任何商业用途!

本项目过程中参考的学习资料主要来源:官方文档,优质的技术博客。

在开发中,我遇到的问题也会写在我自己搭建的博客中,地址在文章最底下。

如果该项目对您的学习有帮助的话,可以考虑star下,谢谢~

我会定期review code 质量,进一步完善和优化

后端API项目(本项目)地址:https://github.com/syz247179876/Chsc-Shop

与本项目搭配的前端项目地址:https://github.com/PleaseKillMe-Ok/vue-mall

项目使用简易指南:


🥰个人技术博客🥰

👉👉👉 博客地址

qq:247179876(技术交流使用)

Version 1.0🐡(所在分支为master,包含了静态资源):

🐳基于后端框架Django和前端框架amazeui的前后段不分离开发。

🐉2020年4月2日---5月25日(已完成)

💃开发使用到的技术栈:Django+amzeui+layui+jquery+redis+celery+websocket+whoosh+mysql

🕺部署服务器用到的技术栈:nginx+uwsgi+channels

🤸一些第三方的服务:阿里云云服务器(学生机) + OSS + OCR身份识别 + 阿里云短信服务

🐠服务管理工具:supervisor

Version 2.0🐙(所在分支为version2.0,去除了静态资源):

🐋重构Version1.0,基于后端框架Django+接口框架Django-Restful-Framework框架,前端使用Vue框架(正在开发),实现前后段分离式开发。

🐲2020年6月5日-----2020年8月20

💃开发使用到的技术栈:Django+DRF+Vue+Jquery+Redis+Celery+Elasticsearch+Websocket+Mysql+oss+JWT

🕺部署服务器用到的技术栈:nginx+uwsgi+channels

🤸一些第三方的服务:阿里云云服务器(学生机) + OSS + OCR身份识别 + 阿里云短信服务

🐠服务管理工具:supervisor(后期使用docker部署各所需服务)

Version 2.1🐙(所在分支为master):

🐋在version2.0上继续开发,相较于改动的内容如下:

抛弃Django自带的Admin后台管理,自己重新用Vue框架撸一个后台,通过DjangoRestFrame框架来设计后台所需API,后台主要用于管理员管理和商家管理.

🐲2020年12月22日-----目前(正在开发中)

项目地址

👉👉👉本后端API项目地址

👉👉👉搭配本API项目的前端项目地址

开发流程

master:上线运行分支

develop:开发分支

version:版本分支

feature:成员共同开发分支(目前尚无该分支)

🥳主要修改🥳:

  1. 传统前后端不分离===>基于restful风格接口开发 👀

  2. whoosh搜索后端====>elasticsearch搜索后端👀

  3. django自带的模板语言====>前端使用vue前端框架👀

  4. django默认的Storage本地存储=====>oss存储

  5. django默认的传统session认证=====>JWT算法认证

🥶目前已完成的功能🥶:

目前已开发83个API:

1.绑定用户手机号

2.用户修改用户名

3.获取用户基本信息

4.用户修改个人密码

5.用户修改头像

6.用户实名认证

7.QQ绑定用户手机帐号

8.QQ第三方登录

9.用户手机/邮箱注册

10.用户手机/邮箱登录

11.用户忘记密码

12.用户添加收货地址

13.用户查询自己收货地址

14.用户修改默认地址

15.用户修改地址详细信息

16.用户删除收货地址

17.用户删除单个足迹

18.用户删除所有足迹

19.记录用户足迹

20.用户查看自己足迹

21.用户添加收藏品

22.用户删除单个收藏品

23.用户删除所有收藏品

24.用户浏览收藏的商品

25.用户添加心仪商品到购物车

27.用户删除单个购物车中商品

28.用户删除清空购物车

29.用户浏览购物车

30.发送验证码(注册)

31.发送验证码(绑定邮箱或手机)

32.发送验证码(修改密码)

33.生成初始订单

34.删除单个订单

35.删除所有订单

36.获取某个订单详细信息

37.获取某个状态的全部订单

38.用户删除个人评论

39.用户评价已购买的商品

40.用户点赞/差评评论

41.记录每日用户登录次数

42.记录所有用户浏览次数

43.获取用户所拥有的优惠卷

44.获取优惠卷

45.根据关键字搜索商品/商家名/商品种类

46.删除用户搜索记录

47.显示每日热搜词

48.管理员登录

49.获取管理员/商家权限集

50.管理员删除角色

51.管理员创建角色

52.管理员修改角色

53.管理员获取角色信息

54.管理员获取权限集/权限详情

55.管理员添加权限

56,管理员删除权限

57.管理员修改权限

58.管理员添加商品类别

59.管理员删除商品类别

59.管理员修改商品类别

60.管理员获取商品类别/类别详情

61.管理员获取商品分组/分组详情

62.管理员删除商品分组

63.管理员修改商品分组

65.管理员添加商品分组

66.商家开店

67.商家添加商品规格属性/值

68.商家删除商品规格属性/值

69.商家修改商品规格属性/值

70.商家获取商品规格属性/值(单个and全部)

71.商家添加商品

72.商家修改商品

73.商家增加运费模板

74.商家删除运费模板

75.商家修改运费模板

76.商家获取运费模板

77.管理员为某个角色/指定商家所属角色增加权限

78.管理员为某个角色/指定商家所属角色修改权限

79.管理员为某个角色/指定商家所属角色删除权限

80.前端界面获取轮播图

81.用户获取历史搜索记录

82.获取每日热搜词

83.单/群删搜索记录

PS:还有些漏掉的API,请参考PostMan接口文档,地址在下面。


POSTMAN文档接口地址

PostMan


SwaggerUI接口地址

[Swagger](https://127.0.0.1:8000/chsc-api-doc/