一、简要需求剖析:
1、注册
2、登陆
3-1、菜单录入(管理员)
3-2、点菜模块(普通用户)
二、项目说明:
1、整体构架:
--data#数据
--db#数据库
--menu.db
--#静态资源
--css#css文件
--js#js文件
--#html模板
--index.html#主页
--login.html#登录
--.html#注册
--admin.html#管理员页面
--404.html#404页面
--app.py#flask文件,处理后端恳求和获取数据库资源
--db.py#处理有关数据库的增删查改
--cal.py#线性规划估算
--.py#将数据添加到数据库
2、功能描述
//根据流程,对部份文件实现的功能描述
--login.html、.html#登入注册,完成了简单检验
#提供两个帐号:拿来登录:
管理员:(admin)(admin)
普通用户:()(guest)
--登录:
--后端:表单不能为空
--前端:用户名是否存在
密码是否正确
--登录成功:
假如用户类型为管理员,重定向到admin.html
假如用户类型为普通用户,重定向到index.html
--注册:
--后端:表单不能为空
用户名厚度要求在5-20
密码厚度要求在5-20
两次密码一致
--注册成功:
重定向到login.html
--admin.html#管理员页面,完成单食材添加,套餐添加
--单食材添加#完成了一些检验
--套餐添加#完成了一些检验,包括套餐价钱不能超过单食材总和
--index.html#主页,完成展示点菜系统,购买,组合套餐,递交记录等功能
--top#右上角的‘登出’,可以注销登陆
#假如登录成功,会显示出用户名
--left
--单食材展示假如想要添加到购物车,点击‘加入点菜单’按钮即可
--套餐展示假如想要添加到购物车,点击‘加入点菜单’按钮即可
--right#实现三个div的切换(购物车,空购物车,正在支付)
--空购物车#假如购物车为空,切换为该div
--购物车#展示购买的所有的单品,可以做添加、减少、移除操作
假如购买的物品再加一个,正好可以省更多钱,就在下方出现提示(如选择奶茶)和添加按键
--正在支付#展示最省钱的组合形式,点击支付按键,可递交订单
#点击递交的时侯点菜系统,会将时间和用户递交到数据库
--404.html#假如找不到页面会被调用
3、技术使用:
后端:--html、css(less)、js
--框架和库:Vue.js、、
前端:--
--框架:Flask
三、重点难点剖析:
1、数据使用比较频繁,且频繁更改。原生js实现比较难
答:使用Vue.js。Vue.js是MVVM框架,实现了单向数据绑定。而在我的项目中,数据使用比较频繁,且可能频繁更改。使用Vue.js会愈加便捷一些
2、如何将Vue.js和Flask结合上去
答:
二者本身不存在矛盾,而且Flask使用的模板的‘{{}}’和Vue.js中的‘{{}}’会出现一些问题。
解决思路:将Vue.js中使用到的数据展示都改写为完整方式如:原来的
{{price}}
改写为
3、登陆注册的检验
答:分开检验,将可以在后端做的都在后端完成。如非空检验,宽度检验,套餐价钱和单食材价钱检验
其余须要数据库支持的,置于前端检验
4、“套餐添加只能添加单菜肴中有的”
答:拿来实现。直接将所有的单食材显示下来,由管理员自己选择。而毋须填写
5、想要在递交订单信息的同时,将用户名和时间也递交到数据库中
答:借助主页背部的用户名显示,获取到相应信息。时间由Date对象直接得到。
免责声明:部分文章信息来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性,如本站文章和转稿涉及版权等问题,请作者在及时联系本站,我们会尽快为您处理。