django第一课基于django超市订单管理系统开发(代码片段)

笔触狂放 笔触狂放     2022-12-26     438

关键词:

概念

django服务器开发框架是一款基于Python编程语言用于web服务器开发的框架,采用的是MTV架构模式进行分层架构。

项目搭建

打开pycharm开发软件,打开开发软件的内置dos窗口操作命令行

在这里指定项目存放的磁盘路径,并使用创建django项目的指令创建当前项目,这里项目中使用django-admin startproject SMBMSSystem 创建了一个项目名为 SMBMSSystem的django服务器项目。

当回车时,只要编辑窗口未显示报错信息,则说明当前项目创建成功,在选择pycharm开发软件的左上角file》open找到打开刚刚创建的项目进行加载出来即可。

加载显示当前项目后,再一次进入内置dos窗口,在当前项目中创建子项目,创建子项目的指令如下:python manage.py startapp SMBMS,执行以上指令,则在当前项目中创建了 SMBMS子项目

将当前子项目名称添加至主项目的setting.py文件中进行管理

在 SMBMS中创建templates文件夹目录,用于存放创建的html模板页面

首页

在templates文件夹中new》html file,定义index.html作为当前子项目的首页,其代码如下

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>超市订单管理系统--登录</title>
<script type="text/javascript">
	function btn(obj,i) 
		//i为1的时候,表示鼠标在按钮上
		//i为2的时候,表示鼠标点击了按钮
		//i为3的时候,表示鼠标移出了按钮
		switch (i) 
		case 1:
			obj.style="width: 120px;background-color: red;border: none;padding: 5px;border-radius: 5px;color: white;";
			break;
		case 2:
			obj.style="width: 120px;background-color: skyblue;border: none;padding: 5px;border-radius: 5px;color: white;";
			break;
		case 3:
			obj.style="width: 120px;background-color: green;border: none;padding: 5px;border-radius: 5px;color: white;";
			break;
		
	
</script>
    <style type="text/css">
        table
            width: 400px;
            border-radius: 5px;
            background-color: cadetblue;
        
        td
            padding: 10px;
        
    </style>
</head>
<body>
	<div align="center" >
		<form action="login/"  method="get">
            % csrf_token %
			<table  style="margin: auto;text-align: center;">
                <tr>
                    <td colspan="2">
                        <h3>登录页面</h3>
                        <hr>
                    </td>
                </tr>
				<tr>
					<td>用户名:</td>
					<td><input type="text" name="username" placeholder="请输入用户名" /></td>
				</tr>
				<tr>
					<td>密码:</td>
					<td><input type="password" name="password" placeholder="请输入密码" /></td>
				</tr>
				<tr >
					<td colspan="2"><input type="submit"
					 onmouseover="btn(this,1)" onmouseout="btn(this,3)" onmousedown="btn(this,2)" value="登录"
					 style="width: 120px;background-color: green;
					 border: none;padding: 5px;border-radius: 5px;
					 color: white;"/></td>
				</tr>
			</table>
		</form>
	</div>
</body>
</html>

urls.py

# 进入登录页面的地址
    path('',views.index),

views.py

def index(request):
    return render(request,"index.html")

接着只需要通过内置dos窗口,编写运行django服务器指令即可,python manage.py runserver,运行服务器后,点击生成的django服务器地址即可

数据库表的创建和数据导入

在子项目的models.py文件中定义数据库表结构类

用户角色类

# 用户角色,用户身份
class Role(models.Model):
    # 工号
    roleCode=models.CharField(max_length=15,blank=True)
    # 角色名称
    roleName=models.CharField(max_length=15,blank=True)
    # 创建该数据的管理员的id
    createdBy = models.IntegerField(blank=True)
    # 创建该数据的时间
    creationDate = models.CharField(max_length=30, blank=True)
    # 修改该数据的管理员的id
    modifyBy = models.IntegerField(blank=True)
    # 修改该数据的时间
    modifyDate = models.CharField(max_length=30, blank=True)

用户类

# 创建用户表
class User(models.Model):
    # 用户编码
    userCode=models.CharField(max_length=15,blank=True)
    # 用户姓名
    userName=models.CharField(max_length=15,blank=True)
    #用户密码
    userPassword=models.CharField(max_length=15,blank=True)
    # 性别 1:女,2:男
    gender=models.IntegerField()
    # 出生日期
    birthday=models.CharField(max_length=15,blank=True)
    # 手机号
    phone=models.CharField(max_length=15,blank=True)
    # 地址
    address = models.CharField(max_length=30, blank=True)
    # 角色,身份id,取之于Role表
    userRole=models.IntegerField()
    # 创建该数据的管理员的id
    createdBy = models.IntegerField(blank=True)
    # 创建该数据的时间
    creationDate = models.CharField(max_length=30, blank=True)
    # 修改该数据的管理员的id
    modifyBy = models.IntegerField(blank=True)
    # 修改该数据的时间
    modifyDate = models.CharField(max_length=30, blank=True)

供应商类

# 供应商表
class Provider(models.Model):
    #供应商编码
    proCode=models.CharField(max_length=20, blank=True)
    # 供应商名称
    proName = models.CharField(max_length=20, blank=True)
    # 供应商详细描述
    proDesc = models.CharField(max_length=50, blank=True)
    # 供应商联系人
    proContact = models.CharField(max_length=20, blank=True)
    # 联系电话
    proPhone = models.CharField(max_length=20, blank=True)
    # 供应商地址
    proAddress = models.CharField(max_length=50, blank=True)
    # 传真
    proFax = models.CharField(max_length=20, blank=True)
    # 创建该数据的管理员的id
    createdBy = models.IntegerField(blank=True)
    # 创建该数据的时间
    creationDate = models.CharField(max_length=30, blank=True)
    # 修改该数据的管理员的id
    modifyBy = models.IntegerField(blank=True)
    # 修改该数据的时间
    modifyDate = models.CharField(max_length=30, blank=True)

 订单类

# 创建订单表
class Bill(models.Model):
    # 账单编码
    billCode=models.CharField(max_length=20,blank=True)
    # 商品名称
    productName = models.CharField(max_length=20, blank=True)
    # 商品描述
    productDesc = models.CharField(max_length=50, blank=True)
    # 商品单位
    productUnit = models.CharField(max_length=10, blank=True)
    # 商品数量
    productCount = models.FloatField(blank=True)
    # 商品总额
    totalPrice = models.FloatField(blank=True)
    # 是否支付(1:未支付 2:已支付)
    isPayment = models.IntegerField(blank=True)
    # 创建该数据的管理员的id
    createdBy = models.IntegerField(blank=True)
    # 创建该数据的时间
    creationDate = models.CharField(max_length=30, blank=True)
    # 修改该数据的管理员的id
    modifyBy = models.IntegerField(blank=True)
    # 修改该数据的时间
    modifyDate = models.CharField(max_length=30, blank=True)
    # 供应商ID
    providerId = models.IntegerField(blank=True)

紧急联系人类

# 建立紧急联系人地址表
class Address(models.Model):
    # 联系人姓名
    contact=models.CharField(max_length=15,blank=True)
    # 收货地址明细
    addressDesc=models.CharField(max_length=50,blank=True)
    # 邮政编码
    postCode=models.CharField(max_length=15,blank=True)
    # 联系人电话
    tel=models.CharField(max_length=20,blank=True)
    # 创建该数据的管理员的id
    createdBy=models.IntegerField(blank=True)
    # 创建该数据的时间
    creationDate=models.CharField(max_length=30,blank=True)
    # 修改该数据的管理员的id
    modifyBy=models.IntegerField(blank=True)
    # 修改该数据的时间
    modifyDate=models.CharField(max_length=30,blank=True)
    # 用户id
    userId=models.IntegerField()

 接着在内置dos窗口中输入python manage.py migrations指令将以上数据库模型类转换成迁移文件

然后输入python manage.py migrate指令将迁移文件转换成数据库对应的表结构

点击打开以上五张表,点击DDL进行执行批量添加数据信息

 

选中要添加的数据的sql语句,右键execute执行即可,执行结束后,刷新当前表结构,既能看到添加的数据,其他几张表以此类推

角色表数据

INSERT INTO `smbms_role` VALUES ('1', 'SMBMS_ADMIN', '系统管理员', '1', '2016-04-13 00:00:00', 0, '');
INSERT INTO `smbms_role` VALUES ('2', 'SMBMS_MANAGER', '经理', '1', '2016-04-13 00:00:00', 0, '');
INSERT INTO `smbms_role` VALUES ('3', 'SMBMS_EMPLOYEE', '普通员工', '1', '2016-04-13 00:00:00', 0, '');

 紧急联系人表数据

INSERT INTO `smbms_address` VALUES ('1', '王丽', '北京市东城区东交民巷44号', '100010', '13678789999', '1', '2016-04-13 00:00:00', '', '', '1');
INSERT INTO `smbms_address` VALUES ('2', '张红丽', '北京市海淀区丹棱街3号', '100000', '18567672312', '1', '2016-04-13 00:00:00', '', '', '1');
INSERT INTO `smbms_address` VALUES ('3', '任志强', '北京市东城区美术馆后街23号', '100021', '13387906742', '1', '2016-04-13 00:00:00', '', '', '1');
INSERT INTO `smbms_address` VALUES ('4', '曹颖', '北京市朝阳区朝阳门南大街14号', '100053', '13568902323', '1', '2016-04-13 00:00:00', '', '', '2');
INSERT INTO `smbms_address` VALUES ('5', '李慧', '北京市西城区三里河路南三巷3号', '100032', '18032356666', '1', '2016-04-13 00:00:00', '', '', '3');
INSERT INTO `smbms_address` VALUES ('6', '王国强', '北京市顺义区高丽营镇金马工业区18号', '100061', '13787882222', '1', '2016-04-13 00:00:00', '', '', '3');

用户表数据

INSERT INTO `smbms_user` VALUES ('1', 'admin', '系统管理员', '1234567', '1', '1983-10-10', '13688889999', '北京市海淀区成府路207号', '1', '1', '2013-03-21 16:52:07', 0, '');
INSERT INTO `smbms_user` VALUES ('2', 'liming', '李明', '0000000', '2', '1983-12-10', '13688884457', '北京市东城区前门东大街9号', '2', '1', '2022-04-22 16:10:36', 0, '');
INSERT INTO `smbms_user` VALUES ('5', 'hanlubiao', '韩路彪', '0000000', '2', '1984-06-05', '18567542321', '北京市朝阳区北辰中心12号', '2', '1', '2014-12-31 19:52:09', 0, '');
INSERT INTO `smbms_user` VALUES ('6', 'zhanghua', '张华', '0000000', '1', '1983-06-15', '13544561111', '北京市海淀区学院路61号', '3', '1', '2013-02-11 10:51:17', 0, '');
INSERT INTO `smbms_user` VALUES ('7', 'wangyang', '王洋', '0000000', '2', '1982-12-31', '13444561124', '北京市海淀区西二旗辉煌国际16层', '3', '1', '2014-06-11 19:09:07', 0, '');
INSERT INTO `smbms_user` VALUES ('8', 'zhaoyan', '赵燕', '0000000', '1', '1986-03-07', '18098764545', '北京市海淀区回龙观小区10号楼', '3', '1', '2016-04-21 13:54:07', 0, '');
INSERT INTO `smbms_user` VALUES ('10', 'sunlei', '孙磊', '0000000', '2', '1981-01-04', '13387676765', '北京市朝阳区管庄新月小区12楼', '3', '1', '2015-05-06 10:52:07', 0, '');
INSERT INTO `smbms_user` VALUES ('11', 'sunxing', '孙兴', '0000000', '2', '1978-03-12', '13367890900', '北京市朝阳区建国门南大街10号', '3', '1', '2016-11-09 16:51:17', 0, '');
INSERT INTO `smbms_user` VALUES ('12', 'zhangchen', '张小晨', '0000000', '1', '1986-04-16', '18098765434', '朝阳区管庄路口北柏林爱乐三期13号楼', '2', '1', '2016-08-09 05:52:37', '1', '2021-10-16 16:55:54');
INSERT INTO `smbms_user` VALUES ('13', 'dengchao', '邓超', '0000000', '2', '1981-11-04', '13689674534', '北京市海淀区北航家属院10号楼', '3', '1', '2016-07-11 08:02:47', 0, '');
INSERT INTO `smbms_user` VALUES ('14', 'yangguo', '杨过', '0000000', '2', '1980-01-01', '13388886623', '北京市朝阳区北苑家园茉莉园20号楼', '3', '1', '2015-02-01 03:52:07', 0, '');
INSERT INTO `smbms_user` VALUES ('15', 'zhaomin', '赵敏', '0000000', '1', '1987-12-04', '18099897657', '北京市昌平区天通苑3区12号楼', '2', '1', '2015-09-12 12:02:12', 0, '');
INSERT INTO `smbms_user` VALUES ('16', 'zhangsan', '张三', '0000000', '2', '2022-05-10', '12345678910', '江西省南昌市济技术开发区志敏1458号', '3', '1', '2022-05-07 09:45:16', 0, '');

 供应商表数据

INSERT INTO `smbms_provider` VALUES ('1', 'BJ_GYS001', '北京三木堂商贸有限公司', '长期合作伙伴,主营产品:茅台、五粮液、郎酒、酒鬼酒、泸州老窖、赖茅酒、法国红酒等', '张国强', '13566667777', '北京市丰台区育芳园北路', '010-58858787', '1', '2013-03-21 16:52:07', null, null);
INSERT INTO `smbms_provider` VALUES ('2', 'HB_GYS001', '石家庄帅益食品贸易有限公司', '长期合作伙伴,主营产品:饮料、水饮料、植物蛋白饮料、休闲食品、果汁饮料、功能饮料等', '王军', '13309094212', '河北省石家庄新华区', '0311-67738876', '1', '2016-04-13 04:20:40', null, null);
INSERT INTO `smbms_provider` VALUES ('3', 'GZ_GYS001', '深圳市泰香米业有限公司', '初次合作伙伴,主营产品:良记金轮米,龙轮香米等', '郑程瀚', '13402013312', '广东省深圳市福田区深南大道6006华丰大厦', '0755-67776212', '1', '2014-03-21 16:56:07', null, null);
INSERT INTO `smbms_provider` VALUES ('4', 'GZ_GYS002', '深圳市喜来客商贸有限公司', '长期合作伙伴,主营产品:坚果炒货.果脯蜜饯.天然花茶.营养豆豆.特色美食.进口食品.海味零食.肉脯肉', '林妮', '18599897645', '广东省深圳市福龙工业区B2栋3楼西', '0755-67772341', '1', '2013-03-22 16:52:07', null, null);
INSERT INTO `smbms_provider` VALUES ('5', 'JS_GYS001', '兴化佳美调味品厂', '长期合作伙伴,主营产品:天然香辛料、鸡精、复合调味料', '徐国洋', '13754444221', '江苏省兴化市林湖工业区', '0523-21299098', '1', '2015-11-22 16:52:07', null, null);
INSERT INTO `smbms_provider` VALUES ('6', 'BJ_GYS002', '北京纳福尔食用油有限公司', '长期合作伙伴,主营产品:山茶油、大豆油、花生油、橄榄油等', '马莺', '13422235678', '北京市朝阳区珠江帝景1号楼', '010-588634233', '1', '2012-03-21 17:52:07', null, null);
INSERT INTO `smbms_provider` VALUES ('7', 'BJ_GYS003', '北京国粮食用油有限公司', '初次合作伙伴,主营产品:花生油、大豆油、小磨油等', '王驰', '13344441135', '北京大兴青云店开发区', '010-588134111', '1', '2016-04-13 00:00:00', null, null);
INSERT INTO `smbms_provider` VALUES ('8', 'ZJ_GYS001', '慈溪市广和绿色食品厂', '长期合作伙伴,主营产品:豆瓣酱、黄豆酱、甜面酱,辣椒,大蒜等农产品', '薛圣丹', '18099953223', '浙江省宁波市慈溪周巷小安村', '0574-34449090', '1', '2013-11-21 06:02:07', null, null);
INSERT INTO `smbms_provider` VALUES ('9', 'GX_GYS001', '优百商贸有限公司', '长期合作伙伴,主营产品:日化产品', '李立国', '13323566543', '广西南宁市秀厢大道42-1号', '0771-98861134', '1', '2013-03-21 19:52:07', null, null);
INSERT INTO `smbms_provider` VALUES ('10', 'JS_GYS002', '南京火头军信息技术有限公司', '长期合作伙伴,主营产品:不锈钢厨具等', '陈女士', '13098992113', '江苏省南京市浦口区浦口大道1号新城总部大厦A座903室', '025-86223345', '1', '2013-03-25 16:52:07', null, null);
INSERT INTO `smbms_provider` VALUES ('11', 'GZ_GYS003', '广州市白云区美星五金制品厂', '长期合作伙伴,主营产品:海绵床垫、坐垫、靠垫、海绵枕头、头枕等', '梁天', '13562276775', '广州市白云区钟落潭镇福龙路20号', '020-85542231', '1', '2016-12-21 06:12:17', null, null);
INSERT INTO `smbms_provider` VALUES ('12', 'BJ_GYS004', '北京隆盛日化科技', '长期合作伙伴,主营产品:日化环保清洗剂,家居洗涤专卖、洗涤用品网、墙体除霉剂、墙面霉菌清除剂等', '孙欣', '13689865678', '北京市大兴区旧宫', '010-35576786', '1', '2014-11-21 12:51:11', null, null);
INSERT INTO `smbms_provider` VALUES ('13', 'SD_GYS001', '山东豪克华光联合发展有限公司', '长期合作伙伴,主营产品:洗衣皂、洗衣粉、洗衣液、洗洁精、消杀类、香皂等', '吴洪转', '13245468787', '山东济阳济北工业区仁和街21号', '0531-53362445', '1', '2015-01-28 10:52:07', null, null);
INSERT INTO `smbms_provider` VALUES ('14', 'JS_GYS003', '无锡喜源坤商行', '长期合作伙伴,主营产品:日化品批销', '周一清', '18567674532', '江苏无锡盛岸西路', '0510-32274422', '1', '2016-04-23 11:11:11', null, null);
INSERT INTO `smbms_provider` VALUES ('15', 'ZJ_GYS002', '乐摆日用品厂', '长期合作伙伴,主营产品:各种中、高档塑料杯,塑料乐扣水杯(密封杯)、保鲜杯(保鲜盒)、广告杯、礼品杯', '王世杰', '13212331567', '浙江省金华市义乌市义东路', '0579-34452321', '1', '2016-08-22 10:01:30', null, null);
INSERT INTO `smbms_provider` VALUES ('18', 'XJ_BYS002', '江西青年职业学院', '软件技术,计算机应用,电子商务', '王老师', '15266666666', '江西省南昌市西湖区', '0791-88888888', '2', '2021-10-19 20:24:17', '2022-05-02 15:52:23', '2');
INSERT INTO `smbms_provider` VALUES ('19', 'SZ_GYS001', '深圳华为有限公司', '主营业务:网络通信,人工智能,电脑,手机,制造芯片等等业务', '任正非', '15266666666', '广东省深圳市南山区', '0791-88888666', '2', '2022-04-27 09:42:29', '2022-04-27 10:57:03', '2');
INSERT INTO `smbms_provider` VALUES ('20', 'XJ_BYS003', '深圳腾讯股份有限公司', '开发各种游戏,即时通讯软件,QQ,微信等等', '马化腾', '18199999999', '广东省深圳市南山区', '0791-88888666', '2', '2022-05-02 14:52:31', null, null);
INSERT INTO `smbms_provider` VALUES ('21', 'XJ_BYS004', '杭州阿里巴巴集团', '支付宝,淘宝,菜鸟等等', '马老师', '15288888999', '浙江省杭州市西湖区', '0791-88888666', '2', '2022-05-03 14:49:08', '2022-05-03 15:52:32', '2');

订单表数据

INSERT INTO `smbms_bill` VALUES ('1', 'BILL2016_001', '洗发水、护发素', '日用品-洗发、护发', '瓶', '500.00', '25000.00', '1', '7', '2014-12-14 13:02:03', 0, '', '13');
INSERT INTO `smbms_bill` VALUES ('2', 'BILL2016_002', '香皂、肥皂、药皂', '日用品-皂类', '块', '1000.00', '10000.00', '2', '6', '2016-03-23 04:20:40', 0, '', '13');
INSERT INTO `smbms_bill` VALUES ('3', 'BILL2016_003', '大豆油', '食品-食用油', '斤', '300.00', '5890.00', '2', '8', '2014-12-14 13:02:03', 0, '', '6');
INSERT INTO `smbms_bill` VALUES ('4', 'BILL2016_004', '橄榄油', '食品-进口食用油', '斤', '200.00', '9800.00', '1', '10', '2013-10-10 03:12:13', 0, '', '7');
INSERT INTO `smbms_bill` VALUES ('5', 'BILL2016_005', '洗洁精', '日用品-厨房清洁', '瓶', '500.00', '7000.00', '1', '13', '2014-12-14 13:02:03', 0, '', '9');
INSERT INTO `smbms_bill` VALUES ('6', 'BILL2016_006', '美国大杏仁', '食品-坚果', '袋', '300.00', '5000.00', '1', '14', '2016-04-14 06:08:09', 0, '', '4');
INSERT INTO `smbms_bill` VALUES ('7', 'BILL2016_007', '沐浴液、精油', '日用品-沐浴类', '瓶', '500.00', '23000.00', '2', '8', '2016-07-22 10:10:22', 0, '', '14');
INSERT INTO `smbms_bill` VALUES ('8', 'BILL2016_008', '不锈钢盘碗', '日用品-厨房用具', '个', '600.00', '6000.00', '1', '7', '2016-04-14 05:12:13', 0, '', '14');
INSERT INTO `smbms_bill` VALUES ('9', 'BILL2016_009', '塑料杯', '日用品-杯子', '个', '350.00', '1750.00', '1', '6', '2016-02-04 11:40:20', 0, '', '14');
INSERT INTO `smbms_bill` VALUES ('10', 'BILL2016_010', '豆瓣酱', '食品-调料', '瓶', '200.00', '2000.00', '2', '6', '2013-10-29 05:07:03', 0, '', '8');
INSERT INTO `smbms_bill` VALUES ('11', 'BILL2016_011', '海之蓝', '饮料-国酒', '瓶', '50.00', '10000.00', '1', '11', '2016-04-14 16:16:00', 0, '', '1');
INSERT INTO `smbms_bill` VALUES ('12', 'BILL2016_012', '芝华士', '饮料-洋酒', '瓶', '20.00', '6000.00', '1', '13', '2016-09-09 17:00:00', 0, '', '1');
INSERT INTO `smbms_bill` VALUES ('13', 'BILL2016_013', '长城红葡萄酒', '饮料-红酒', '瓶', '60.00', '800.00', '1', '14', '2016-11-14 15:23:00', 0, '', '1');
INSERT INTO `smbms_bill` VALUES ('14', 'BILL2016_014', '泰国香米', '食品-大米', '斤', '400.00', '5000.00', '1', '13', '2016-10-09 15:20:00', 0, '', '3');
INSERT INTO `smbms_bill` VALUES ('15', 'BILL2016_015', '东北大米', '食品-大米', '斤', '600.00', '4000.00', '1', '11', '2016-11-14 14:00:00', 0, '', '3');
INSERT INTO `smbms_bill` VALUES ('16', 'BILL2016_016', '可口可乐', '饮料', '瓶', '2000.00', '6000.00', '1', '8', '2012-03-27 13:03:01', 0, '', '2');
INSERT INTO `smbms_bill` VALUES ('17', 'BILL2016_017', '脉动', '饮料', '瓶', '1500.00', '4500.00', '1', '7', '2016-05-10 12:00:00', 0, '', '2');
INSERT INTO `smbms_bill` VALUES ('18', 'BILL2016_018', '哇哈哈', '饮料', '瓶', '2000.00', '4000.00', '2', '6', '2015-11-24 15:12:03', 0, '', '2');
INSERT INTO `smbms_bill` VALUES ('20', 'BILL2022_002', '飞天茅台', '酒类', '箱', '100.00', '400000.00', '1', '10', '2022-05-04 11:05:22', 0, '', '1');
INSERT INTO `smbms_bill` VALUES ('21', 'BILL2017_001', '啤酒', '酒类', '瓶', '100.00', '300.00', '1', '6', '2021-10-10 10:10:10', '2', '2022-05-06 09:48:13', '1');
INSERT INTO `smbms_bill` VALUES ('23', 'BILL2022_004', '葵花籽', '炒货,干货', '斤', '1000.00', '10000.00', '1', '8', '2022-05-07 09:17:05', 0, '', '4');

 登录功能

当点击登录按钮时,发送请求至login/请求地址,因此,urls.py文件中需要定义该地址进行匹配,并将请求转发给子项目的views.py文件

urls.py

# 接收用户输入的登录的用户名和密码的地址
    path('login/',views.login),

 views.py

# 定义全局变量,用于保存登录成功之后的用户信息
user=[]

#定义方法,用于接收用户名和密码,做登录验证
def login(request):
    username=request.GET["username"]
    password=request.GET["password"]
    # 将接收的用户名和密码作为查询条件,查询用户表,判断该登录的用户是否存在
    # 如果存在则允许该用户进入主页面,否则跳转至登录失败页面,不允许该用户登录
    # 将user变量指明为使用外部的全局变量
    global user
    user=User.objects.filter(userName=username,userPassword=password)
    if user:
        # 说明该登录的用户存在,允许该用户进入主页
        return render(request,"home.html","user":user[0])
    else:
        # 说明该登录的用户不存在,不允许进入主页,跳转至登录提示页面
        return render(request,"loginError.html")

 接着创建主页模板和登录失败的模板

home.html

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>超市订单管理系统--主页</title>
<style type="text/css">
	*
		margin: 0px;
		padding: 0px;
	
</style>

<script type="text/javascript">
	function yhgl() 
		//当用户点击用户管理功能的时候,需要判断当前登录的用户的身份,如果是管理员或者经理允许进入,普通员工不允许进入
		//先获得当前登录的用户的身份
		var input=document.getElementById("hidd");
		var i=input.value;
		switch (i) 
		case "1":
			//管理员身份
			//跳转一个可以操作用户的添加,修改,查询,删除等功能
			location.href="/yhgl/?type=1";
			break;
		case "2":
			//经理身份
			//跳转一个只能查看普通员工的个人信息的页面
			location.href="/yhgl/?type=2";
			break;
		case "3":
			//普通员工身份
			alert("您当前没有权限使用该功能");
			break;
		
	

	function gysgl() 
		//先获得当前登录的用户的身份
		var input=document.getElementById("hidd");
		var i=input.value;
		switch (i) 
		case "2":
			//能和供应商直接对接的只能是经理身份
			location.href="/gysgl/?type=2";
			break;
		case "3":
			//普通员工可以查看所有供应商信息,但不能添加,修改,删除供应商信息
			location.href="/gysgl/?type=3";
			break;
		default:
			//如果不是经理,那么都不允许操作该功能
			alert("当前登录的员工不具备该功能的操作权限");
			break;
		
	

	function ddgl() 
		var input=document.getElementById("hidd");
		var i=input.value;
		switch (i) 
            case "2":
			//经理,只能查看所有订单,修改订单,删除订单,不能添加订单,支付金额
			location.href="/getBills/";
			break;
		case "3":
			//普通员工,添加订单和查询自己的订单
			location.href="/getBillsByUserId/";
			break;
		default:
			//管理员身份不允许操作该功能
			alert("当前登录的员工不具备该功能的操作权限");
			break;
		
	
</script>
</head>
<body>
	<div style="width: 1200px;height: 800px;margin: auto;">
		<div style="width: 100%;height: 160px;background-color:skyblue;">
			<div  style="width: 100%;height: 20px;">

				<div align="left" style="width: 20%;height: 100%;float: left;" >
					&nbsp;<a href="/login/?username= user.userName &password= user.userPassword " style="text-decoration: none;">返回首页</a>
				</div>

			<div align="right" style="width: 80%;height: 100%;float: right;">
				<a>欢迎,<span style="color: red;"> user.userName </span></a>
				&nbsp;&nbsp;<a href="/" style="text-decoration: none;">注销</a>&nbsp;
			</div>

			</div>

			<div align="center" style="width: 100%;height: 140px;line-height: 140px;"><h1>超市订单管理系统</h1></div>
		</div>
		<div align="center" style="width: 100%;height: 640px;background-color: pink;">
			<input type="hidden" id="hidd" value=" user.userRole ">
			<input type="button"  value="用户管理"  onclick="yhgl()"  style="width: 400px;height: 160px;margin-bottom: 20px;margin-top: 20px;"><br/>
			<input type="button"  value="供应商管理" onclick="gysgl()" style="width: 400px;height: 160px;margin-bottom: 20px;"><br/>
			<input type="button"  value="订单管理" onclick="ddgl()" style="width: 400px;height: 160px;margin-bottom: 20px;"><br/>

		</div>
	</div>
</body>
</html>

loginError.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>超市订单管理系统--提示页面</title>
</head>
<body>
    <p>登录失败,用户名不存在或者密码错误,请<a href="/">点击这里</a>进行重新登录!!!</p>
</body>
</html>

其界面效果如下

 

django第四课基于django超市订单管理系统开发(代码片段)

概念本文在上一文之上,针对管理员,经理,普通员工身份的用户操作订单管理模块功能。功能实现该功能也是业务功能模块,管理员不具备操作权限,普通员工需要对超市所合作的供应商进行进货,因此... 查看详情

django第二课基于django超市订单管理系统开发(代码片段)

概念本文在上一文之上,针对管理员,经理,普通员工身份的用户操作用户管理模块功能。功能实现1.普通员工登录系统后,对于用户管理模块不具备操作其他用户信息的权限。因此当普通员工登录后,弹出对... 查看详情

django第一课基于django图书借阅管理网站平台(代码片段)

概念django服务器开发框架是一款基于Python编程语言用于web服务器开发的框架,采用的是MTV架构模式进行分层架构。项目搭建打开pycharm开发软件,打开开发软件的内置dos窗口操作命令行在这里指定项目存放的磁盘路径,... 查看详情

django第三课基于django超市订单管理系统开发(代码片段)

概念本文在上一文之上,针对管理员,经理,普通员工身份的用户操作供应商管理模块功能。功能实现供应商管理模块属于业务功能,这里管理员不具备操作权限,而经理具备与供应商之间谈合作的实际需要&#... 查看详情

django第四课基于django超市订单管理系统开发(代码片段)

概念本文在上一文之上,针对管理员,经理,普通员工身份的用户操作订单管理模块功能。功能实现该功能也是业务功能模块,管理员不具备操作权限,普通员工需要对超市所合作的供应商进行进货,因此... 查看详情

django第三课基于django超市订单管理系统开发(代码片段)

概念本文在上一文之上,针对管理员,经理,普通员工身份的用户操作供应商管理模块功能。功能实现供应商管理模块属于业务功能,这里管理员不具备操作权限,而经理具备与供应商之间谈合作的实际需要&#... 查看详情

django第一课基于django图书借阅管理网站平台(代码片段)

概念django服务器开发框架是一款基于Python编程语言用于web服务器开发的框架,采用的是MTV架构模式进行分层架构。项目搭建打开pycharm开发软件,打开开发软件的内置dos窗口操作命令行在这里指定项目存放的磁盘路径,... 查看详情

django第一课银行账户管理系统开发(代码片段)

概念django服务器开发框架是一款基于Python编程语言用于web服务器开发的框架,采用的是MTV架构模式进行分层架构。项目的搭建1.打开pycharm开发软件,打开开发软件的内置dos窗口操作命令行在这里指定项目存放的磁盘路径&#... 查看详情

计算机毕业设计django基于python药房药品管理系统

...管理与现在网络相结合,利用Django技术建设药房药品管理系统,实现药品的信息化。则对于进一步提高订单信息管理发展,丰富订单信息管理经验能起到不少的促进作用。药房药品管理系统能够通过互联网得到广泛的... 查看详情

计算机毕业设计django基于python药房药品管理系统

...管理与现在网络相结合,利用Django技术建设药房药品管理系统,实现药品的信息化。则对于进一步提高订单信息管理发展,丰富订单信息管理经验能起到不少的促进作用。药房药品管理系统能够通过互联网得到广泛的... 查看详情

java+jsp基于ssm的校园oto超市系统

本网站主要是针对高校学生以超市购物为重点开发的网站。系统从用户上分为三种:卖家、买家和游客。系统从模块分为买家模块和卖家模块,买家模块包括用户注册登录、商品浏览、商品详情、商品加入购物车、购物... 查看详情

第一次启用管理员时,我可以使用现有用户作为 Django 管理员吗?

】第一次启用管理员时,我可以使用现有用户作为Django管理员吗?【英文标题】:CanIuseanexistinguserasDjangoadminwhenenablingadminforthefirsttime?【发布时间】:2012-07-0510:47:30【问题描述】:我已经建立了一段时间的Django站点,但我从未启... 查看详情

Ajax Django 添加按钮未在第一次单击时添加

】AjaxDjango添加按钮未在第一次单击时添加【英文标题】:AjaxDjangoaddbuttonnotaddingonfirstclick【发布时间】:2021-09-0913:55:27【问题描述】:所以我在Django中有一个动态呈现的表格,表格中的项目代表订单项目,因此对于我添加到购物... 查看详情

超级简单python基于django框架仓库管理系统设计与实现mysql数据库(项目源码+数据库)

1、项目介绍基于django框架的企业设备采购管理系统拥有三种角色:管理员、货主、采购主要实现功能有:货物大厅、我的订单、个人中心、货物管理、入库记录、出库记录、用户管理。2、项目技术后端框架:django前... 查看详情

django创建促销系统

创建应用(coupons)把应用添加到settings.py文件中创建数据模型创建优惠码表单forms.py添加到admin后台,方便控制运行命令pythonmanage.pymakemigrations和pythonmanage.pymigrate在订单模型中添加优惠码逻辑在订单系统模型中添加优惠逻辑在订... 查看详情

基于javajsp+servlet超市订单管理平台设计和实现建议收藏(代码片段)

...刻刻都需要对商品各种信息进行统计分析。而大型的超市管理系统功能过于强大而造成操作繁琐降低了小超市的工作效率。超市管理系统是市场上最流行的超市上常用的系统之一,它主要包含以下几个模块:系统登陆、... 查看详情

django学习[第一篇](代码片段)

01-创建Django项目安装虚拟环境:mkvirtualenvdjango_demo-ppython3安装django安装包(联网安装):pipinstalldjango==2.2-ihttps://pypi.douban.com/simple创建django工程(项目):django-adminstartproject项目名称[目录名称]例如:django-adminstartprojectdjango_demo第一... 查看详情

django项目实战--天天生鲜网上超市(代码片段)

...是特此注明一下,系列文章参考的是传智播客-天天生鲜Django项目,作为Django学习的练手项目,文章只作为学习记录。??资源下载:项目页面提取链接:链接:https://pan.baidu.com/s/15zJvuXWakvTgZ1PYv_Im_w提取码:8dtd项目Django源码提取链接:... 查看详情