admin 管理员组

文章数量: 1086019


2024年3月11日发(作者:字母圈里sado是什么意思)

七蓿窟画蓿

2021年第04期

(总第220期)

基于Django框架的美多商城系统设计与实现

董汉晶、聂雅琳胡奎强、闵志宇2

(1.

洛阳理工学院计算机学院,河南洛阳

471023;2

洛阳理工学院材料学院,河南洛阳

471023)

摘要:随着中国社会现代化进程的不断推进,传统的购物方式也发生了巨大的变化,现在人们更倾向于网上购物,特别是

接触互联网较多的年轻人,网上购物系统不仅有着更优惠的价格,也为大家省去了线下游逛的时间。文章主要研究基于

python

语言

Django

框架下的美多商城设计与实现,采用前后端分离模式,分为用户模块,商品模块,购物车模块以及订

单模块的前端页面展示和后端逻辑部分。通过这些模块的协同工作,很好的展现了

Django

框架用于

web

服务搭建的优

势,能够为用户提供完整的网上购物体验。

关键词:

Django

框架;

web

服务;商城设计

中图分类号:

TP

309 文献标识码:

B

文章编号= 2096-9759(2021)04-0125-03

1

课题研究背景及意义

网上商城作为电子商务是最经典和直接的体现,现在已

3

模块数据库设计

3.1用户模块

用户模块是最重要的三大模块之一。主要提供注册,登

录,收藏,下单等主要的

web

功能。在数据库中创建用户表用

于存储用户信息,主要存储的用户信息字段有

id

,

password

email

,

mobile

等。数据库表格的具体实现通过

Django

框架中

的对象关系映射(

ORM

)系统搭建,将数据库表格映射成

mod

-

el

.

py

中的

class

类,并通过相应的语法格式建立表中的字段和

不同表的关系映射。

其中有关用户数据的表结构如表1所示:

表1用户表结构的设计

Field

id

password

username

email

mobile

isactive

is staff

lastlogin

datajoined

3.2商品模块

商品模块是整个世纪最重要,也是最复杂的模块。其中

涉及到商品的分类,商品相关的信息资料,还有商品的品牌,

规格,类别,图片信息等等。

在电子商务中,商品有两个重要的概念:

SKU

SPU

SPU

(标准产品单位)是商品信息聚合的最小单位,属性相同的

商品就可以称为一个

SPU

SKU

(库存量单位)是库存进出计

量的单位。可以是以件,盒,托盘等为单位,是物理上不可分

割的最小存活单位。

商品的数据库表格有九个,分别是

tb_goods

(商品),

tb_sku

(商品

SKU

),

tb

_

sku

_

specification(SKU

规格信息),

tb

_

sku

_

im

-

age(SKU

图片),

tb

_

goods_specification

(商品规格),

tb

_

specifi

-

cation_option

(规格选项),

tb

_

goods_category

(商品类别),

tb

_

goods

_

channel

(商品频道),

tb

_

brand

(品牌)。其中他们之间的

E

-

R

关系图如图3所本:

Type

Int(ll)

varchar( 128)

varchar(丨 50)

vnrchar(254)

varchar( 11)

tinyint( 1)

tinyint ⑴

datatime(6)

datatime(6)

Null

NO

NO

NO

NO

NO

NO

NO

YES

NO

UNI

Key

PRI

UNI

Default

NULL

NULL

NULL

NULL

NULL

NULL

NULL

NULL

NULL

经成为全球比较热门的行业,依靠着网络方便、快捷等优势让

人们更加的喜欢使用网上商城购物,同时也解决了相当一部

分人的就业问题,以及促进经济更好更健康的发展。

与传统的线下店铺想对比,网上商城具有很大的优势。在

网上商城用户可以在任意时间地点进行浏览和选购心仪的产

品,没有任何的限制,并且购买成本低。网上商城能真正的实

现24小时全天候营业,没有营业时间限制。网上商城还有网

络无地域的优势,国内外的中国产品也可以包含在内。综上

所述,网上商城可以极大地提高人们的生活效率[1]。

2

功能模块设计

设计的原则是以用户需求为中心,以生产促进需求实现的

过程。划分不同的功能模块之前需要统计用户需要的功能,对

功能进行划分并进行可行性分析和成本估算。只有当审核通过

的功能才能进入开发阶段。一个完整的项目开发有前后端分离

和不分离两种模式,前后端分离的好处是不用协调前后端开发

人员的进度问题。只需要给前后端规定好

API

接口,这样前后

端的不同开发人员就可以按照自己功能模块的进度去完成气

本设计采用前后端分离的开发模式,后端的业务逻辑代

码需要根据前端客户端的不同需求来编写,首先需要确定前

端的具体页面需求。前端部分的需求分析如图1所示:

前端部分

【用户页面1商品贝面I %车夏订单K面夏运赛蜃台】

图1前端页面分析

后端业务逻辑通过

Django

匹配相应的请求,具体模块如

2

所本:

后纗部分

【用户横块

I

•品

*

I

說车夏订,《块夏横块】

图2后端模块分析

后端作为本设计的重要开发模块,其中的用户模块,商品

模块和订单模块是最重要的三大模块。

收稿日期= 2021-03-29

基金项目:河南省高等学校重点科研计划项目(项目编号:19A120009、21B510006)支持。

作者简介:董汉磊(1983-),男,河南邓州人,洛阳理工学院计算机学院,讲师,主要研宄方向:信号与信息处理、计算机应用。

125

Changjiang Information & Communications董汉磊等:基于Django框架的美多商城系统设计与实现

3

商品数据表

E

41

关系图

商品的不同数据表之间存在不同的关联,一般分为主键,

外键关联。商品信息表设计如表2所示:

将购物车数据保存到

cookie

之前需要使用

pickle

进行序列化

转换,并使用

base

64编码为字符串。

2

商品

SPU

数据表

Field

id

create_lime

u pda

name

sales

comments

brand—id

category id

desc—detail

desc_pack

desc service

lime

Type

im( 1 U

dalalime(6)

datalime(6)

varchar(50|

IiU(ll)

tnt( 11)

ini(ll)

int(!l)

longtext

long text

Longiexi

Null

NO

NO

NO

NO

NO

NO

NO

NO

NO

NO

NO

MUI

MUI

Key

PRI

Default

NULL

NULL

NULL

NULL

NULL

NULL

NULL

NULL

NULL

NULL

NULL

4

用户界面设计

在人与机器的互动过程中,有一个重要的层面就是界面。

人与机器理解指令的方式是不同的,机器也有自己的机器语

言,但人不能直接理解这些深奥难懂的机器操作,这时需要

建立一个界面去供用户理解机器的操作并足以下达指令操

作机器。用户界面设计是屏幕产品的重要组成部分,一个界

面设计的好坏直接带来用户对当前产品的第一印象。随着

当下用户界面设计的不断发展,用户界面不再只是一个单纯

的信息展示平台,而是一个融合了心理学,语言学,设计学等

不同学科的重要部分。用户界面设计的好坏会直接影响到

一个软件的市场寿命,所以每个开发人员对用户界面的设计

都是十分重视的。本设计也不例外,严格按照用户设计原则

设计而来。

用户设计主要包含三个原则。既保证用户界面的一致性,

4.1

用户界面一致性

一致性是每一个界面设计都需要具备的特点。必须要有

户便于使用和了解,减少用户发生错误选择的可能性。

4.2

降低用户记忆负担

用户浏览大量商品时时可能会产生大量的记忆负担,往

往在选中喜欢的商品后会继续浏览,再次选中其他商品时可

3.3

购物车模块

购物车模块的业务需求有以下几点:

(1)

物车数据。

(2) 用户可以对购物车数据进行増,删,改,査。

(3)

选数据。

(4) 用户登录时,合并

cookie

中的数据到

redis

中。

对于未登录的用户,购物车数据主要使用浏览器中的

在用户登录与未登录的状态下,都可以保存用户的购

降低用户的记忆负担,保证用户完全的控制性气

用户对于购物车数据的勾选,订单结算界面会用到勾

清晰且一致的界面结构,风格必须要与内容相一致。要让用

cookie

保存,已登录用户的购物车数据使用后端的

redis

保存。

126

Changjiang Information & Communications

能会遗忘前面的商品,这时需要提供一些视图来帮助降低用

户的负担。比如我们可以将用户浏览过的商品信息单独记录

起来,又或是将用户喜欢的商品收藏,这些都是降低用户记忆

负担的方法之一。

4.3

用户的控制

要从用户的角度去考虑问题,要知道在这个界面用户需

要做些什么,并提供灵活的选择,且所有的选择都必须是可逆

的。在用户做出危险选择时要有信息提示介入,保证用户操

作的安全性。

5前台页面的实现

前台页面是面向用户的界面。对于大部分的用户而言,

他们都没有接触过开发流程,不会使用终端命令窗口去使用

项目。所以我们需要编写一个前台页面去供用户使用,后台

处理过的数据传送给浏览器解析[4]。最后呈现在用户面前的

就是人性化的可视操作页面。这些页面主要有网站首页,登

录注册页面,商品详情页,购物车页面,订单结算页面等等。

5.1

系统网站首页

系统网站是用户进入系统的第一个页面,也是用户进行

操作的首选页面。本页面需包含此系统的大部分功能,如注

册登录,浏览商品,添加和查看购物车,查看订单等等。

5.2

注册登录页面

用户在商城进行各项操作之前都需要验证身份。对于首

次访问本网站系统的用户,提供注册页面以及登录页面使其

完成身份验证。对己有账号的用户可凭借己注册的账号和密

码完成登录操作。注册时,用户需设置自己的账号名和密码,

获取后端验证码完成人机验证,提供手机号码完成短信验证

并需要勾选同意本系统的用户协议。用户提供的两次密码必

须相同,图片验证码以及短信验证码也必须一致才能完成整

个注册流程。用户登录时,需提供自己已注册过的账号名和

密码完成身份验证。同时用户可以选择第三方账号

QQ

或微

信登录,不过首次登录成功后需要绑定或注册自己的美多账

号才能正常使用。

5.3

用户中心页面

用户中心是用户的个人信息管理界面。这里可以对用户

的可修改资料进行修改,如用户名,密码,头像等。用户也可

以在这里管理自己的收货地址,查看自己的全部订单。

5.4

商品详情页

商品详情页商品具体信息详细展示,可为用户提供详细

了解和收藏,添加购物车以及立即购买等操作的页面。主要

展示了商品的具体规格,详细信息,版本选择和收藏购买操作。

5.4

购物车页面

购物车页面是用户预购买商品的集合地,存放用户的心

仪产品,包含商品的基本概要信息,价格着重显示。商品可选

中并提交订单,完成购买。

5.6

提交订单及支付页面

提交订单页面是在选中购物车商品点击购买后所生成,需

要生成订单号,创建时间,确认购买商品信息,收货人,联系电

话以及收货舰等信息。支付后会縣支付成功并跳转到首页。

6系统的运行与测试

6.1页面显示测试

127

董汉磊等

:

基于

Django

框架的美多商城系统设计与实现

首先对本设计的各个页面进行测试,开启前后端程序,可

发现分页面显示正常。

6.2注册登录功能测试

注册页面测试图片验证码后端获取是否正常,短信验证

码是否收发正常,两次密码对比提示是否正常以及手机号码

格式提示是否正确。经过测试,系统注册页面功能正常。

6.3

商品浏览测试

商品点击功能需有详情页展示,主要有商品参数,价格,

用户选择等基本功能选择。需要具备直接购买或是添加购物

车按钮。经过测试,本系统商品详情页面显示正常,拥有要求

的信息展示和基本功能按钮。

6.4

用户中心测试

用户中心需要显示用户的个人基本资料,包括头像,昵称,

个人签名等等。要求提供修改个人基本信息,密码和更换手

机号码等功能。本系统经测试可修改用户基本信息,更换手

机号,修改密码等基本要求。

本系统经过测试系统的详细测试,基本具有了所需的功能,

各个部分功能设计均可正常使用。

7结语

本文主要采用了

Python

语言作为基础,灵活运用

Django

框架,第三方库及第三房工具来进行设计开发。详细技术上

涉及到

web

开发体系结构的选择,

Django

框架项目的建立,

数据库的选择与配置等。根据需求的不同,本设计使用前后

端分离的模式搭建前后端业务逻辑。前端页面采用了

CSS

,

JS

,

JQuery

等技术,并根据前后端开发约定端口在

JS

操作代

码中编写好向后端发起请求的

API

借口。后端业务逻辑代

码需要根据前后留下的

API

开发借口实现业务路由,逻辑函

数处理,数据库数据存取,模板嵌入数据,返回响应对象等功

能。实际的项目启动时,前端

HTML

页面由

node

.

js

前端服

务器启动,不需要后端支持即可直接由本机

IP

地址,端口号

及文件路径直接访问。后端项目启动后可对启动的前端页

面进行实际的功能操作,后端会进行请求处理并返回响应。

在第三方工具中主要使用了云通讯第三方短信验证平台提

供的模板用于用户注册时的短信验证身份功能[5]。本系统在

之后的完善中还需要多使用

redis

的缓存机制,系统的数据

库接口也要有相应的优化,进一步提升用户数据的查询速

度。

参考文献:

[1] 欧瀚祺,杨莎.基于

Django

的物品租赁管理系统的设计[

电脑知识与应用,2020,16(35):59-61.

[2] 杨众.基于

SpringBoot

的校园商城系统设计与实现[

J

]

息技术与信息化,2020 (09):81-82.

[3] 吴春梅,蒋林利,余荣川.基于

Python

Django

框架的二

级学院资料室图书管理系统设计与实现[

J

].无线互联科技,

2020,17(16):67-70.

[4] 王柯梦,王瑞平.基于

B

2

C

网上商城前台系统数据库设计

与实现[

J

].广西质量监督导报,2020 (09):70-71.

[3]吕戌杪,粟艺峰,张蒙蒙,刘晶.基于

Django

的煤矿地测防治

水信息管理系统的设计与实现[

J

].科技经济导刊,2020,28

(15):13-14,

J

].

.信


本文标签: 用户 商品 页面 设计 系统