项目介绍
Django 开发收银系统,跟着王进老师学习笔记,学习完成记录下,最终效果如下:
收银页面截图如下:
登陆界面:
管理员界面:
第一章
开发从数据库开始
数据库设计:
需要设计的数据表
职位表的表结构:
打开数据库管理工具,创建数据库shooop,选择utf-8字符
新建查询,名为data
新建职位表position
CREATE TABLE if NOT EXISTS Position
(
PositionId TINYINT Auto_Increment COMMENT '职位编号',
PositionName VARCHAR(20) NOT Null COMMENT '职位名称',
Description VARCHAR(200) COMMENT '职位描述',
CONSTRAINT Pk_PositionId PRIMARY Key (PositionId)
);
插入语句:
INSERT INTO Position (PositionName,Description) values('管理员','可以执行任何操作,管理超市系统')
INSERT INTO Position (PositionName,Description) values('收银员','负责收银');
login 表结构:
这里需要创建外键,但是默认的mysql的引擎不支持外键,创建的语句不会出现外键,只能出现索引,索引要设置引擎位 ENGINE INNODB,第一个职位表重建。里面的字段我加了几个,用于注册和改密码
Create Table if Not EXISTS Login
(
LoginId varchar(20) COMMENT '登录账号--员工的编号',
idcard varchar(18) Not Null COMMENT '身份证号',
sex varchar(2) Not Null COMMENT '性别',
ispay varchar(5) Default 'false' COMMENT '是否支付',
LoginPwd varchar(20) Not Null COMMENT '登录密码',
UserName varchar(20) Not Null COMMENT '员工姓名',
IsEnable tinyint Default 1 COMMENT '是否启用',
PositionId tinyint Default 2 COMMENT '职位编号',
CreateTime datetime Default Now() COMMENT '创建时间',
LastLoginTime datetime COMMENT '上次登录时间',
CONSTRAINT Pk_LoginId PRIMARY Key (LoginId),
CONSTRAINT Fk_PositionId FOREIGN Key (PositionId) REFERENCES Position (PositionId)
)ENGINE INNODB CHARSET utf8;
插入login表的数据
-- 准备数据
Insert Into Login (