Web实战丨基于django+html+css+js的电子商务网站

文章目录

  • 写在前面
  • 实验目标
  • 需求分析
  • 实验内容
    • 安装依赖库
    • 1.登陆界面
    • 2.注册界面
    • 3.电子商城界面
    • 4.其他界面
  • 运行结果
  • 写在后面

写在前面

本期内容:基于Django+HTML+CSS+JS的电子商务网站

实验环境:

  • vscode或pycharm
  • python(3.11.4)
  • django

代码下载地址:https://download.csdn.net/download/m0_68111267/88725954

实验目标

使用Django+HTML+CSS+JS开发一个含登陆界面的电子商务网站。本项目共分为六大模块:

  1. 用户信息界面
  2. 商品信息界面
  3. 购物车界面
  4. 送货地址界面
  5. 订单界面
  6. 支付界面

需求分析

1. 用户信息界面

用户信息模块包括:用户注册,用户登录,显示用户信息和修改用户密码。

  • 注册信息要输入用户名、密码和邮箱。注册信息要求用户名必须唯一,如果用户名在数据库中已经存在,就会显示相应的错误提示信息。
  • 在用户登录的时候,如果用户名和密码输入有误,就必须提示相应的错误信息。
  • 用户登录程序后,应该允许用户查看自己的用户信息和收货信息。
  • 允许修改密码,修改用户密码的时候,必须提供旧密码、新密码和新密码的确认信息。如果出现下列情况时应该给出相应的错误提示信息。
    ① 旧密码不正确。
    ② 新密码与旧密码相同。
    ③ 新密码与新密码的确认信息不一致。

2. 商品信息界面

商品信息模块包括:商品信息的维护,商品概要信息的分页显示,根据商品名称的模糊查询,对某一条商品显示其详细信息。

  • 商品信息的维护:包括增加、修改和删除操作,是利用 Django的后台完成的。
  • 商品概要信息的分页显示:包括显示商品信息的 id、名称、价钱以及查看详情和放入购物车的操作链接。
  • 根据商品名称的模糊查询:通过商品名称的模糊查询实现,查询结果界面同概要信息,也需要实现分页功能。
  • 对某一条商品显示其详细信息:除了显示名称、价钱,还要显示商品的描述、图片以及放入购物车的操作。

3. 购物车界面

购物车模块包括:购物车中所有商品的显示,添加商品进入购物车,修改购物车中某种商品的数量,删除购物车中某个商品,删除购物车中所有商品。

  • 购物车中所有商品的显示:通过列表实现,包括显示商品 id、商品名称、单价、商品个数以及移除的操作链接。单击“商品 id”可以查看对应的商品详细信息。
  • 添加商品进入购物车:可以在购物车列表中进行操作,也可以在商品的详细信息中进行操作。
  • 修改购物车中某种商品的数量和删除购物车中某个商品的操作在购物车列表中进行。
  • 可以在查看所有订单页面中删除购物车中所有商品。

4. 送货地址界面

送货地址模块包括:送货地址的显示,送货地址的添加,送货地址的修改,送货地址的删除。

  • 送货地址的显示:可以在生成订单选择送货地址的时候,也可以在查看用户信息的时候。
  • 送货地址的添加:可以添加当前用户账号下的一个或多个送货地址。
  • 送货地址的修改和送货地址的删除可以通过送货地址的显示页面进入。

5. 订单界面

订单模块包括:显示总的订单,显示所有订单,删除单个订单,删除总订单。

  • 显示总的订单:在订单生成完毕后显示,包括生成时间、配货地址和总价钱以及订单中每个商品的订单 id、商品名称、商品价格、个数。
  • 显示所有订单:包括该用户下的所有订单,每个订单的显示内容同单个订单。如果这个订单没有支付,系统就会提供支付的操作链接。
  • 删除单个订单:可以在显示单个订单内容页面中进行,也可以在显示所有订单内容页面中进行。
  • 删除总订单:在显示单个订单或显示所有订单的页面中进行。
  • 在单个订单和所有订单中单击“商品id”可以查看对应的商品详细信息。

6. 支付界面

订单确认后,可以利用各种支付平台(如支付宝、微信、网银卡等)进行支付操作。

实验内容

安装依赖库

在正式开始之前,我们需要先安装本次实战项目所依赖的库:

  • django:一个高级的Python Web框架。

安装命令:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple django

1.登陆界面

{%load static%}
<!DOCTYPE html>
<html lang="zh-CN"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1"><!-- 上述3个meta标签*必须*放在最前面,任何其他内容都*必须*跟随其后! --><meta name="description" content=""><meta name="author" content=""><title>电子商务系统丨登录</title><!-- Bootstrap core CSS --><link href="/static/css/login.css" rel="stylesheet"> <!-- Custom styles for this template --><link href="/static/css/bootstrap.min.css" rel="stylesheet"><link href="/static/css/my.css" rel="stylesheet"><script type="text/javascript" src="/static/js/sh256.js"></script><script type="text/javascript" >function SHA256Password(){document.forms["myForm"]["password"].value = SHA256(document.forms["myForm"]["password"].value);return true;}
</script></head><body><div class="container"><form class="form-signin" name="myForm" method="post" action="/login_action/" enctype="multipart/form-data" onsubmit="return SHA256Password()">{% csrf_token %}<h2 class="form-signin-heading">电子商务系统-登录</h2>{{uf.as_p}}<p style="color:red">{{error}}</p> <br><button class="btn btn-lg btn-primary btn-block" type="submit">登录</button><br><a href="\regist\">注册</a></form></div> </body></html>

2.注册界面

{%load static%}
<!DOCTYPE html>
<html lang="zh-CN"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1"><!-- 上述3个meta标签*必须*放在最前面,任何其他内容都*必须*跟随其后! --><meta name="description" content=""><meta name="author" content=""><title>电子商务系统丨注册</title><!-- Bootstrap core CSS --><link href="{%static 'css/login.css'%}" rel="stylesheet"--><!-- Custom styles for this template --><link href="{%static 'css/bootstrap.min.css'%}" rel="stylesheet"--><link href="{%static 'css/my.css'%}" rel="stylesheet"><script type="text/javascript" src="/static/js/sh256.js"></script><script type="text/javascript" src="/static/js/checkLength.js"></script><script type="text/javascript" >function SHA256Password(){password = document.forms["myForm"]["password"].value;if (checkLength(password,5)==1){document.forms["myForm"]["password"].value = SHA256(password);}return true;}</script></head><body><div class="container"><form class="form-signin" name="myForm" method="post" enctype="multipart/form-data" onsubmit="return SHA256Password()"><h2 class="form-signin-heading">电子商务系统-注册</h2>{% csrf_token %}{{uf.as_p}}<p style="color:red">{{error}}</p> <br><input class="btn btn-lg btn-primary btn-block" type="submit" value="注册"><br><a href="/login/">登录</a></form></div> </body></html>

3.电子商城界面

{%load static%}
<!DOCTYPE html>
<html lang="zh-CN"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1"><!-- 上述3个meta标签*必须*放在最前面,任何其他内容都*必须*跟随其后! --><meta name="description" content=""><meta name="author" content=""><title>电子商务系统</title><!-- Bootstrap core CSS --><link href="{%static 'css/login.css'%}" rel="stylesheet"--><!-- Custom styles for this template --><link href="{%static 'css/bootstrap.min.css'%}" rel="stylesheet"--></head><body role="document">
<!-- 导航栏 --><nav class="navbar navbar-inverse navbar-fixed-top"><div class="container"><div class="navbar-header"><a class="navbar-brand" href="/goods_view/">电子商务系统</a></div><div id="navbar" class="collapse navbar-collapse"><ul class="nav navbar-nav"><li class="active"><a href="/goods_view/">商品列表</a></li><li class="active"><a href="/view_all_order/">查看所有订单</a></li>{% block content %}{% endblock %}<div class="container theme-showcase" role="main"><div class="page-header"></div></div> <!-- /container --><script src="//cdn.bootcss.com/jquery/1.11.3/jquery.min.js"></script><script src="//cdn.bootcss.com/bootstrap/3.3.5/js/bootstrap.min.js"></script></body></html>

4.其他界面

请下载后查看哦~

运行结果

1. 登陆界面

1

2. 注册界面

2

3. 电子商城界面

3

4. 购物车界面

4

5. 地址界面

5

写在后面

我是一只有趣的兔子,感谢你的喜欢!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/339726.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网络安全工具:通过监控分析日志数据保护企业网络

由于混合工作模式的兴起以及业务运营向云环境的迁移&#xff0c;企业网络变得更加分散和复杂&#xff0c;仅安装外围安全解决方案只会创建一个基本的防御层&#xff0c;系统、服务器和其他网络实体会生成记录所有网络活动的日志。集中式日志管理系统可以帮助管理员自动监控网络…

[NISACTF 2022]bingdundun~

[NISACTF 2022]bingdundun~ wp 信息搜集 进入题目&#xff1a; 点一下 upload? &#xff1a; 注意看上面的 URL &#xff0c;此时是 ?bingdundunupload 。 随便找个文件上传一下&#xff1a; 注意看上面的 URL &#xff0c;此时变成&#xff1a;upload.php 。 那么我有理…

防止串扰可不止3W规则,还有这些方法

随着半导体集成度越来越高&#xff0c;PCB层间的串扰问题愈发严重&#xff0c;虽然很多电子工程师通过3W规则来解决串扰&#xff0c;但你知道吗&#xff1f;还有很多方法可以抑制PCB板的串扰问题。 串扰CrossTalk)是指PCB上不同网络之间因较长的平行布线引起的相互干扰&#xf…

水产冷链物流行业零下25℃库架一体 海格里斯HEGERLS四向穿梭式冷藏冷库智能密集仓

随着国内外仓储物流整体规模和低温产品消费需求的稳步增长&#xff0c;冷链市场应用潜力不断释放。在传统“货架叉车”的方式下&#xff0c;货物、人员及机械设备不断进出&#xff0c;容易造成温度波动&#xff0c;导致冷量流失。立体冷库则以更高密度、更具成本效益的方式&…

【JVM 基础】类字节码详解

JVM 基础 - 类字节码详解 多语言编译为字节码在JVM运行Java字节码文件Class文件的结构属性从一个例子开始反编译字节码文件字节码文件信息常量池方法表集合类名 再看两个示例分析try-catch-finallykotlin 函数扩展的实现 源代码通过编译器编译为字节码&#xff0c;再通过类加载…

婴儿专用洗衣机有必要买吗?全网性价比高的宝宝洗衣机推荐

很多新手宝爸宝妈们在购买宝宝用品的时候&#xff0c;想要入手一款婴儿洗衣机&#xff0c;但在选婴儿洗衣机对很多新手宝妈宝爸来说也是一件很头疼的事情&#xff0c;婴儿洗衣机种类较多&#xff0c;而且功能的效果也有所不同&#xff01;所以又迟迟不敢下手&#xff0c;关于宝…

【STM32】HAL库的RCC复位状态判断及NVIC系统软件复位

【STM32】HAL库的RCC复位状态判断及NVIC系统软件复位 在实际开发中 有时候会遇到复位状态不同 导致结果不同的情况 比如在上电复位时 电压不稳定 可能导致一些外部芯片无法正常工作 从而导致进行了错误的操作流程 所以 可以在程序运行后 加一个复位状态判断 用来检测是否正常复…

SpringCloudAlibaba微服务架构实战派上下册技术交流!

另外我的新书RocketMQ消息中间件实战派上下册&#xff0c;在京东已经上架啦&#xff0c;目前都是5折&#xff0c;非常的实惠。 https://item.jd.com/14337086.html​编辑https://item.jd.com/14337086.html “RocketMQ消息中间件实战派上下册”是我既“Spring Cloud Alibaba微…

计算机毕业设计------SSH宿舍管理系统

项目介绍 本项目分为三种角色&#xff1a;系统管理员、楼宇管理员、学生&#xff1b; 系统管理员主要功能如下&#xff1a; 楼宇管理员管理、学生管理、楼宇管理、宿舍管理、学生入住登记、学生寝室调换、学生迁出登记、学生缺勤记录、修改密码、退出登录 楼宇管理员主要功能…

生成式 AI 如何重塑软件开发流程和开发工具?

生成式AI正在重塑开发流程和开发工具&#xff0c;通过自动化和优化软件开发过程&#xff0c;提高开发效率和质量。它可以帮助开发人员快速生成代码、测试和部署应用程序&#xff0c;同时减少错误和缺陷。此外&#xff0c;生成式AI还可以帮助开发人员快速理解和解决复杂的技术问…

2024最新:嵌入式学习规划二期

十三个视频&#xff0c;详尽解剖大学生/程序员在学习过程中、职业过程中产生的问题&#xff0c;以及方向指引。 【课程大纲】 01-洗脑篇&#xff1a;剖开事务看本质&#xff0c;不要人云亦云请独立思考02-全局视图&#xff1a;啥是嵌入式&#xff1f;嵌入式都有啥&#xff1f…

SpringBoot集成阿里云短信实现发送短信验证码

SpringBoot集成阿里云短信实现发送短信验证码 一、准备工作1、注册账号2、申请资质3、申请签名4、创建模板 二、springboot集成发送短信1、引入依赖2、编写短信配置文件3、编写短信发送工具类 一、准备工作 在使用springboot集成短信服务之前&#xff0c;需要先注册阿里云的账…