1. 程式人生 > >django04 資料提交

django04 資料提交

day63 2018-05-03


1. 內容回顧
1. 單表的增刪改查
1. 刪和改
1. GET請求 URL傳值
1. 格式
127.0.0.1:8000/delete_publisher/?name=alex&id=7
2. Django後端取值
request.GET --> 大字典
request.GET["name"]/request.GET["id"] --> key不存在就報錯了
request.GET.get("name", "sb") --> 推薦用這個方法取值

2. 複習一下POST方法提交的資料怎麼取:
request.POST.get("key")
3. ORM操作
1. 刪除
1. 先找到物件,呼叫物件的.delete()方法
publisher_obj = models.Publisher.objects.get(id=7)
publisher_obj.delete()
或者
models.Publisher.objects.get(id=7).delete()

2. 修改
1. 找到物件,通過修改物件的屬性來修改資料庫中指定欄位的值,要儲存

publisher_obj = models.Publisher.objects.get(id=7)
publisher_obj.name = "新的出版社名字"
publisher_obj.save() --> 把修改提交到資料庫
注意:不要修改id,不然相當於增加一行資料

2. GET和POST
1. GET請求:
1. GET請求攜帶的資料都拼在了URL上
2. GET請求攜帶的資料有長度限制 40k
2. POST請求
1. form表單提交資料
2. 上傳檔案

3. 幾個GET請求具體的應用場景:
1. 瀏覽器位址列直接輸入URL
2. 點選a標籤
3. 搜尋引擎檢索
3. request相關的知識點
1. request.method
1. GET
2. POST
2. request.POST --> 所有和post請求相關的資料
3. request.GET --> 所有和GET請求相關的資料

2. 今日內容
1. 圖書管理系統表結構設計
圖書管理系統的三種角色
1. 出版社
2. 書
3. 作者
總結關係:
1. 一本書 只能 有一個出版社
2. 一本書 能有 多個作者
3. 一個作者 能寫 多本書

出版社和書: 一對多 --> 外來鍵
書和作者: 多對多 --> 用第三張表做關聯

表結構圖在excel中:


2. 檢視書籍列表
3. 新增書籍
將所有的出版社在頁面上以select標籤的形式展示出來
4. 刪除書籍
如何在後端獲取要刪除的是那一個書籍?
通過URL傳引數的形式
5. 編輯書籍
將所有的出版社在頁面上以select標籤的形式展示出來
將當前編輯的書籍物件的書名和出版社在頁面上展示出來