Django學習筆記(二)----簽到設計邏輯及數據庫基本操作API

1.發佈會簽到系統設計原理

簽到系統設計原理:
簽到功能頁面屬於某一場獨立發佈會。在發佈列表中,每一條發佈會都含有一個“簽到”鏈接,用來打開對應簽到頁面。 簽到鏈接根據發佈會id來確認:/sign_index/{{event.id}}/。
發佈會:
這裏寫圖片描述
單擊sign登陸按鈕時(form實現),會自動跳轉到/sign_index/{{event.id}}/路徑。target=”{{event.id}}_blank”屬性設置鏈接在新窗口打開。顯示代碼在templates目錄下sign_index.html文件中。
簽到頁面處理:
這裏寫圖片描述
簽到頁面
這裏寫圖片描述
簽到處理邏輯中,判斷當前簽到用戶是否所屬於對應發佈會,判斷依據爲根據輸入手機號,到Guest表中查詢手機號對應手機號所屬發佈會。判斷邏輯在view.py中處理。
嘉賓列表:
這裏寫圖片描述
判斷邏輯:
這裏寫圖片描述

2.Django數據庫基本操作

Django爲數據庫操作提供python API,包括數據插入、查詢、刪除、更改操作;

from sign.models impot Event,Guest
models:django模型,數據庫表創建
desc tables:查看數據庫表結構

Event、Guest表結構:
這裏寫圖片描述

2.1插入數據
table.objects.create()
eg:
from datetime import datetime
Event.objects.create(id=1,name=”Tom”,limit=2000,status=True,address=”Beijing”,start_time=datetime(2017,9,22,12,0,0))

2.2查詢數據
table.objects.get()
eg:
Event.objects.get(name=”榮耀9發佈會”).status
Event.objects.get(name=”榮耀9發佈會”).limit

模糊查找:table.objects.filter()
eg:
Event.objects.filter(name__contains=”發佈會”),name爲發佈會名字,name和contains之間用雙下滑線連接,contain == LIKE。

2.3刪除數據
table.objects.delete()
eg:
Guest.objects.get(phone=’123456’).delete()

2.4更新數據
table.objects.update()
eg:
Guest.objects.select_for_update().filter(phone=’123456’).update(realname=’jack’)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章