Django之ORM正反向查詢

2022-09-06 03:15:12 字數 509 閱讀 9009

在orm查詢中,一般分為正向查詢和反向查詢。至於什麼是正向查詢和反向查詢,還要從表關係說起。

舉個簡單的例子,就拿圖書和出版社來說,一般乙個圖書只有乙個出版社,但是乙個圖書一般有多個圖書,外來鍵關係一般建立在多的一側,也就是說,外來鍵關係是建立在圖書的表模型中的。

而正向查詢就是從多的一側出發,即圖書表出發去查詢。舉例如下:查詢出版社為出版社1的圖書。

obj = models.book.objects.filter(publisher__name='出版社1')
反向查詢則是與之相反,從少的一次出發進行查詢。反向查詢操作如下:

obj = models.publisher.objects.get(id=1)  # 假設出版社1的id為1

obj.book_set.all()

django正反向查詢

django正反向查詢 當我們的表存在外來鍵想要從一找多的時候該怎麼查詢,當我們從多找一的時候又應該怎麼查詢.一找多首先我們要建立乙個專案,在專案的model.py中建立兩個模型.from django.db import models class usertype models.model tit...

正反向 多表查詢

正向 反向外來鍵字段在我手上那麼,我查你就是正向 外來鍵字段如果不在手上,我查你就是反向 book 外來鍵字段在書那兒 正向 publish publish 外來鍵字段在書那兒 反向 book 一對一和多對多正反向的判斷也是如此 正向查詢按欄位 反向查詢按表名小寫 set 1.查詢書籍主鍵為1的出版...

序列化正反向查詢

序列化 正向查詢 from rest framework import serializers from users.models import userinfo 正向查詢 class userinfoserializer serializers.serializer 類名小寫.外來鍵字段 good...