Django框架使用流程(三)

開發流程的學習,用於快速熟悉Django框架各個模塊

一、數據測試

Django自帶了ORM模塊,我們只需要熟悉常用的ORM操作即可通過面向對象的形式來完成原有SQL語句才能做到的增刪改查。

在尚未啓動服務器時,使用shell命令是操作數據庫非常方便的測試環境

在manage.py 同級目錄下進入python shell,進行簡單的模型API練習

python manage.py shell

二、基本對象數據測試

引入需要的包:

from booktest.models import Book,Hero

1,查詢所有圖書信息:

Book.objects.all()
django模型類自帶管理器objects 可以直接調用響應的方法

2,新建圖書信息:

b = Book()
b.title=“射鵰英雄傳”
b.save()
當調用save方法是 會將數據存儲進入數據庫

4,修改圖書信息:

b.price=3.5
b.save()
當調用save方法是相當於執行了update方法

5,刪除圖書信息:

b.delete()
執行delete時將數據苦衷對應的數據刪除

三、關聯對象的操作

當相關對象存在一對一、一對多、多對多關係時可以使用關聯查詢,此處僅以一對多舉例,後續課程中會有多對多,一對一關係。

1、創建關聯對象

h=Hero()
h.name=‘郭靖’
h.content=‘降龍十八掌’
h.book=b
h.save()
book字段爲Hero表中的外鍵,此處必須按照外鍵相關約束賦值

2、一對多關係中通過多方找一方,此處案例爲通過英雄找書

h.book.name
因爲關係字段就存儲在多方,可通過多方中的關鍵字段找一方

3、一對多關係中通過一方找多方,此處案例爲通過書找到其中的所有英雄

b.hero_set.all()
一方對象.小寫多方類名.all()

4、如果在定義外鍵是使用了字段related_name

則可以直接使用其值替換hero_set如

book = models.ForeignKey(Book,on_delete=models.CASCADE,related_name=‘heros’)
查詢是就可以使用

b.heros.all()

ORM提供了非常多的面向對象語句,此處僅列舉最廣泛使用的,後續課程中會應用到更多的ORM語句
在這裏插入圖片描述

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