一、簡要需求剖析:
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對象直接得到。
免責聲明:部分文章信息來源于網絡以及網友投稿,本站只負責對文章進行整理、排版、編輯,出于傳遞更多信息之目的,并不意味著贊同其觀點或證實其內容的真實性,如本站文章和轉稿涉及版權等問題,請作者在及時聯系本站,我們會盡快為您處理。