Django Model層ORM之查詢操作 六

2021-09-25 04:20:16 字數 2750 閱讀 9845

目錄

一,django查詢相關api

all() 查詢所有記錄,返回乙個集合物件

filter(屬性 = ' ' ) 根據條件查詢,返回乙個集合物件

first() 和 last() ,查詢第乙個和最後乙個記錄, 返回單個物件

get(id = 2),根據id查詢, 返回乙個物件

filter(author='諸葛亮').values('name',...),返回作者為'諸葛亮'的多有書的 name 字典集合

filter(author='劉備').values_list('name'),返回元組集合。

exclude(author='劉備'),查詢除'劉備'之外的所有記錄.

order_by('price'),對**進行排序

reverse() 對查詢結果反向排序

distinct() 去重:如

count() 查詢物件總數

exists() 判斷結果是否存在,存在返回true , 否則返回false

二,模糊查詢

def select(request):

book_list = book.objects.all()

return render(request, 'index.html', )

def select(request):

book_list = book.objects.filter(name='go基礎')

# book_list = book.objects.all()

return render(request, 'index.html', )

def select(request):

# book_list = book.objects.filter(name='go基礎')

# book_list = book.objects.all()

# return render(request, 'index.html', )

# book = book.objects.first()

book = book.objects.last()

return render(request, 'book.html', )

def select(request):

# book_list = book.objects.filter(name='go基礎')

# book_list = book.objects.all()

# return render(request, 'index.html', )

# book = book.objects.first()

# book = book.objects.last()

book = book.objects.get(id=5)

return render(request, 'book.html', )

def select(request):

# book_list = book.objects.filter(name='go基礎')

# book_list = book.objects.all()

# return render(request, 'index.html', )

# book = book.objects.first()

# book = book.objects.last()

# book = book.objects.get(id=5)

# return render(request, 'book.html', )

result_list = book.objects.filter(author='諸葛亮').values('name')

return render(request, 'book_item.html', )

def select(request):

# book_list = book.objects.filter(name='go基礎')

# book_list = book.objects.all()

book_list = book.objects.exclude(author='劉備')

return render(request, 'index.html', )

def select(request):

# book_list = book.objects.filter(name='go基礎')

# book_list = book.objects.all()

# book_list = book.objects.exclude(author='劉備')

book_list = book.objects.all().order_by('price')

return render(request, 'index.html', )

book.objects.all().values('name').distinct()
book.objects.filter(price__gt=100).values('name', 'price') :**大於100
book.objects.filter(name__contains='b') :查詢名稱包含'p'的所有記錄
....具體很多, 可查詢官方文件。

(15)模型層 什麼是ORM

orm是什麼 1 mvc或者mtv框架中包括乙個重要的部分,就是orm,它實現了資料模型與資料庫的解耦,即資料模型的設計不需要依賴於特定的資料庫,通過簡單的配置就可以輕鬆更換資料庫,這極大的減輕了開發人員的工作量,不需要面對因資料庫變更而導致的無效勞動 2 orm是 物件 關係 對映 的簡稱 作用是...

Django model欄位型別清單

django 通過 models 實現資料庫的建立 修改 刪除等操作,本文為模型中一般常用的型別的清單,便於查詢和使用 charfield.max length 字元的最大長度,django會根據這個引數在資料庫層和校驗層限制該字段所允許的最大字元數。auto now 當物件被儲存時,自動將該字段的...

Django model欄位型別清單

django 通過 models 實現資料庫的建立 修改 刪除等操作,本文為模型中一般常用的型別的清單,便於查詢和使用 charfield.max length 字元的最大長度,django會根據這個引數在資料庫層和校驗層限制該字段所允許的最大字元數。auto now 當物件被儲存時,自動將該字段的...