基于python的购物商城系统

指南

💞当前专栏:python程序设计

精彩专栏推荐👇🏻👇🏻👇🏻

💎:Asp.net程序设计
📘:java控制台课程设计
🎈:php课程设计
🎀:微信小程序设计
🕹:python程序设计
🚀:JavaWeb程序设计
🧩:SpringBoot程序设计
🎗:javaSwing程序设计
⛳️:javaSwing游戏设计
🌍:Vue+Node程序设计
🌟:安卓程序设计
🎃:C#程序设计
📕:C++程序设计
💞:C语言程序设计

咨询

见下方二维码

摘要

对购物商城管理的流程进行科学整理、归纳和功能的精简,通过软件工程的研究方法,结合当下流行的互联网技术,最终设计并实现了一个简单、易操作的购物商城系统。内容包括系统的设计思路、系统模块和实现方法。系统使用过程主要涉及到管理员和用户两种角色,主要包含个人中心、用户管理、商品类别管理、热卖商品管理、投诉建议、系统管理、订单管理等功能。
系统开发主要在 Windows 系统下进行,采用支持跨平台的 Python语言开发完成,因此可以运行在任意开发环境下。系统采用mysql数据库和B/S结构的方式,按照Django框架进行开发。

第二章 系统开发技术

本系统在后台使用 Python语言实现跨平台的处理,以B/S的结构方式以及Django框架进行开发,数据库使用MySQL。

2.1 Python语言

Python是由荷兰数学和计算机研究学会的吉多·范罗苏姆于20世纪90年代设计的一款高级语言。Python优雅的语法和动态类型,以及解释型语言的本质,使它成为许多领域脚本编写和快速开发应用的首选语言。Python相比与其他高级语言,开发代码量较小,代码风格简洁优雅,拥有丰富的第三方库。Python的代码风格导致其可读性好,便于维护人员阅读维护,程序更加健壮。Python能够轻松地调用其他语言编写的模块,因此也被成为“胶水语言”[3]。
Python的应用场合非常广泛,在科研领域中,可以用Python训练人工智能模型,也可以对实验数据进行数据分析。在生活中,Python提供了很多优秀的、开源的Web开发框架,例如Django、Flask、Pyramid、Tornado等。知乎、豆瓣网、Youtube等知名应用都是由Python为基础进行开发的。相比于其他框架,Django有着更加丰富的插件,作为企业级框架也很好上手,适合本次开发。此次系统是开发一个Web应用,采用Django框架,将在下一节进行具体介绍。本次开发选用的是Python3.6.4版本。

2.2 Django框架简介

Django被官方称之为“完美主义者框架”,只需要很少的代码就能更快的完成一个优秀的Web应用[4]。Django采用了MTV框架模式,此模式根据MVC进行改进形成了更适于Django的设计模式。M为模型(Model)、T为模板(Template)、V为视图(View)。Django对象关系映射(ORM,Object-Relation-Mapping):ORM的方法论有着三个核心原则:
① 简单:以最基本的形式构建数据。
② 传达性:数据库结构被任何人都能理解的语言文档化。
③ 精确性:基于数据模型创建正确标准化的结构。
用于Python之中即是以Python类形式定义数据模型,类中的每一个属性对应着数据库中的一列。引入ORM后,无需编写原生SQL语句,使用基于面向对象的思想去编写类、对象、调用方法等,ORM会将其映射成SQL语句通过pymysql执行。

2.3 MySQL数据库技术

数据库在软件项目中扮演着操作管理数据的角色同时还能够保证数据的独立性、一致性和安全性,并为系统访问数据提供有效方式不仅如此数据库还能大大减少程序员开发程序时间。在日常能够接触实用的一般有两类数据库,一类是以(Oracle,DB2,SQL Server,MySQL )为代表的关系型数据库和以(NoSql、MongeDB)为代表的非关系型数据库,两类数据库各有各的优缺点。其中非关系型数据库又分为网络数据库和层级数据库。-网络数据库是指在计算机网络系统中应用数据库技术然后借助网络技术将存储于数据库中的大量信息及时发布出去;在成熟的数据库技术的帮助下,计算机网络实现了对网络中的各种数据的有效管理,用户与网络中的数据库数据交互也借此得以进行。IMS也是最早研制成功的数据库系统。关系数据结构、关系操作集合、关系完整性约束构成了关系模型。作为数据库另外一种区分方式的存储介质被大家分为磁盘和内存这 两种。例如:关系型数据库就存储在磁盘中,非关系型数据库则存储在内存中。典型的关系型数据库有:Oracle、DB2、Microsoft SQL Server、Microsoft Access、MySQL、SQLite。小型关系型数据库:Microsoft Access,SQLite;中型关系型数据库:SQL Server,Mysql;大型关系型数据库:Oracle,DB2。
大家常用的其他关系形数据库系统大多是MySQL AB公司开发的,其中MySQL也是由这家开发的,所应用的分布式数据库管理系统是客户机/服务器体系结构得益于此结构,而且用这个系统建造的数据库具有很强的适用性,用C和C++编写的系统让他拥有很强的适用性所以他可以在大部分操作系统上使用并能和php结合。不同的API函数针对不同的语言(C,C++, PYTHON等)来处理不同数据;为了更好地支持多CPU多线程通过使用核心线程来实现;提供的存储机制分为事务和非事务存储机制;MySQL采用双重许可,不管是从MySQL AB公司获得正式的商业许可又或是许可条款下以免费软件或开放源码软件的方式使用MySQL软件都是被允许的。
MySQL作为数据库拥有很多优点,其中由于是开放源码,所以使用成本特别低,而它体积小的特点决定了速度快的特性。因此,My Sql具有开放性,多线程支持多种API,可跨数据库连接,国际化,数据库体积巨大等特点。简单的来说 ,MySql是一个开放的、快速的、多线程的、多用户的数据库服务器。
选用MySQL作为数据库的其中一个原因就是支持多线程,支持多线程的特点为利用系统资源提供了便捷并因此大大提高了系统运行速度和效率,而且连接数据库的方式多样包括但不局限于TCP/IP、ODBC和JDBC等途径;但是没有东西是完美无缺的,即便MySQL也如此,虽说它有着众多优点但其功能不够强大,规模也相对较小,无法应对大型数据哭的处理。但是对于本系统来说,选用MySQL作为数据库,其功能性能已绰绰有余,如果要进行二次开发的数据库表结构空间的扩展也是完全可行的。综上所述,MySQL是作为本系统数据库的最优选择。

2.4 B/S架构

B/S结构就是指系统客户端与服务器分离,客户端通过浏览器访问服务端进行操作[10]。
B/S结构目前广泛应用于绝大部分系统搭建中,这种结构摒弃C/S结构客户端服务端不分离的缺点,具有更多的优势:
(1)跨平台性:B/S的标准由标准化组织确立,适用于绝大多数的系统搭建,通用于应用之间[12]。
(2)低维护成本:客户端和服务器端分离,减轻了两端的压力,尤其是客户端,对客户端设备,硬件、软件要求都比较低,并且系统需要升级或维护时,只需要在服务器端升级或维护就可以,使相应的费用减少[13]。

第三章 需求分析

系统功能需求分析

(1)系统的通用功能包括用户登录和密码修改,是两个角色共同需要使用的功能,用例分析如图3-1所示。
在这里插入图片描述
(2)管理员用例分析如图3-2所示。在这里插入图片描述

(3)用户用例分析如图3-3所示。在这里插入图片描述

3.4非功能性需求分析

在系统的需求分析中除了保证系统功能需求分析准确完整,还应考虑与其相辅相成的各种其他因素,这样才能确保系统后续设计能够更加完善、清晰,确保系统实现后的有较高的使用价值。

3.5系统流程分析

3.5.1登录流程
在这里插入图片描述
3.5.2添加信息流程
管理层人员有添加信息功能。添加信息流程如图3-5所示:在这里插入图片描述

3.5.3删除流程
管理员可以选择把自己发布的信息删掉,选择要删除的信息确认之后,删除信息的操作就完成了。删除信息流程图如图3-6所示。
在这里插入图片描述

第四章 系统设计

4.1系统总体设计

购物商城系统的建设可以为购物商城管理提供帮助,通过对一些基础信息管理实现针对性的安排,可以按照用户的角色权限使不同用户角色看到不一样的信息界面。现根据需求阶段的分析,我们可以大致确定系统需要包含的功能如下图所示:
系统总体结构图如下,见图4-1。在这里插入图片描述

4.2数据库设计在这里插入图片描述在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

第五章 详细设计与实现

5.1系统功能实现

当人们打开系统的网址后,首先看到的就是首页界面。在这里,人们能够看到系统的导航条,通过导航条导航进入各功能展示页面进行操作。系统首页界面如图5-1所示:

在这里插入图片描述
系统注册:在系统注册页面的输入栏中输入用户注册信息进行注册操作,系统注册页面如图5-2所示:
在这里插入图片描述
热卖商品:在热卖商品页面的输入栏中输入商品名称、品牌和价格进行查询,可以查看到热卖商品详细信息;并根据需要进行收藏、赞一下、踩一下、添加到购物车、立即购买或评论等操作;如图5-3所示:在这里插入图片描述

优惠资讯:在优惠资讯页面的输入栏中输入标题进行查询,可以查看到优惠资讯详情信息;如图5-4所示:
在这里插入图片描述
个人中心:在个人中心页面可以输入个人信息进行更新信息操作,还可以对我的订单、我的地址和我的收藏进行详细操作;个人中心页面如图5-5所示:在这里插入图片描述

5.2后台模块实现

后台登录,在登录页面选择需要登录的角色,再正确输入用户名和密码后,进入操作系统进行操作;如图5-6所示。
在这里插入图片描述
5.2.1管理员模块实现
管理员进入主页面,主要功能包括对首页、个人中心、用户管理、商品类别管理、热卖商品管理、投诉建议、系统管理、订单管理等进行操作。管理员主界面如图5-7所示:在这里插入图片描述

管理员点击用户管理。进入用户页面输入用户账号和选择性别进行查询,新增或删除用户列表,并根据需要对用户详细信息进行详情,修改或删除操作。如图5-8所示:
在这里插入图片描述

管理员点击商品分类管理。进入商品分类页面输入商品分类进行查询,新增或删除商品分类列表,并根据需要对商品分类详细信息进行详情,修改或删除操作。如图5-9所示:在这里插入图片描述

管理员点击热卖商品管理。进入热卖商品页面输入商品名称、品牌和价格进行查询,新增或删除热卖商品列表,并根据需要对热卖商品详细信息进行详情,修改,查看评论或删除操作。如图5-10所示:
在这里插入图片描述
管理员点击投诉建议。进入投诉建议页面输入用户名进行查询或删除投诉建议列表,并根据需要对投诉建议详细信息进行详情,回复或删除操作。如图5-11所示:在这里插入图片描述
管理员点击系统管理。进入优惠资讯页面输入标题进行查询、新增或删除优惠资讯列表,并根据需要对优惠资讯详细信息进行详情,修改或删除操作。还可以对轮播图管理、系统简介和在线客服进行详细操作;如图5-12所示:在这里插入图片描述

管理员点击订单管理。进入已支付订单页面输入订单编号和商品名称进行查询或删除已支付订单列表,并根据需要对已支付订单详细信息进行详情,发货或删除操作。还可以对未支付订单、已发货订单、已完成订单、已取消订单和已退款订单进行详细操作;如图5-13所示:
在这里插入图片描述
5.2.2用户模块实现
用户进入系统后台,主要功能包括对个人中心和我的收藏管理进行操作。如图5-14所示:
在这里插入图片描述
5.3本章小结
本章主要基于前面系统设计的内容,详细介绍了管理员和用户两个角色对购物商城系统的主要功能界面进行详细介绍和展示。

开发文档

开发语言:Python
框架:django
Python版本:python3.7.7
数据库:mysql 5.7(一定要5.7版本)
数据库工具:Navicat11
开发软件:PyCharm 
浏览器:谷歌浏览器

后台路径地址:localhost:8080/项目名称/admin/dist/index.html
前台路径地址:localhost:8080/项目名称/front/dist/index.html (无前台不需要输入)

管理员账号:admin
管理员密码:admin

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

懒羊羊h

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值