防優酷:https://github.com/SkyOceanchen/youku-syspython
模仿優酷下載上傳電影
項目說明:
仿優酷項目mysql
ATM + 購物車:
1.用戶功能層
2.接口層
3.數據層
dict ---> jsongit
優勢: 可跨平臺,全部語言均可以使用 缺點: 不能存儲對象。
選課系統:
1.用戶功能層
2.接口層
3.數據層
對象 ---> picklegithub
優勢: 存取效率高,是python自帶的,可存對象。 缺點: 不可跨平臺。
仿優酷系統:
C:
1.用戶功能層sql
S: 2.接口層 - ORM - 存: 把對象 ---> json ---> mysql - 取: mysql ---> json ---> 對象 對象.方法 去操做數據庫。 對象.save(對象(一堆名稱空間)) # insert into ... 對象.update() # update xxx set ... 對象.select() # select * from ... 寫一條sql語句,適用於多個對象去調用。 3.數據層 - MySQL - pymysql
Client:
接收用戶輸入的數據,把數據傳給Server端。數據庫
Server:
處理用戶輸入的數據,而後把結果返回給客戶端。json
- 接口層 處理業務邏輯 - 數據層 - orm 操做數據庫Mysql - Mysql
設計表:
- 用戶表: User
- id
- name
- pwd
- register_time 註冊時間
- is_vip 是不是VIP 0/1
- is_locked 是否被鎖定 0/1
- user_type 管理員用戶/普通用戶瀏覽器
- 電影表 Movie - id - m_name - is_free 免費/收費 0/1 - is_delete 電影是否被刪除 - file_md5 校驗電影文件的惟一性 - path 電影的存放目錄 - upload_time 電影上傳時間 - user_id - 公告表 Notice - id - title - content - create_time - user_id - 下載記錄表 DownloadRecord - id - user_id - movie_id - download_time
管理員
1 註冊
2 登陸
3 上傳視頻
4 刪除視頻
5 發佈公告cookie
管理員session
cookies: 存放於瀏覽器(客戶端)的一個文本,是key:value的形式存儲的,用於存儲用戶信息。 - 淘寶: - 必需要登陸才能查詢指定商品 - 登陸成功後才容許訪問 session: - 用戶再登陸經過後,會把session一併發送給客戶端,保存在瀏覽器的cookies。 session是一個存放再服務端的隨機加密後的字符串,它是用於校驗用戶是否登陸。
用戶 1 註冊 2 登陸 3 衝會員 4 查看視頻 5 下載免費視頻 6 下載收費視頻 7 查看觀影記錄 8 查看公告