Django使用詳解:ORM 的反向查找(related_name)
先定義兩個模型,一個是A,一個是B,是一對多的類型。
class A(models.Model):
name= models.CharField('名稱', max_length=32)
class B(models.Model):
a= models.ForeignKey(A, verbose_name='A類',related_name = "test")
name = models.CharField('稱呼', max_length=16)
如果我們要查詢一個A擁有哪些B的話,那我們要怎么做呢
通過主表來查詢子表
A.objects.get(id=A_id).test.all().order_by('-created'),
django 默認(rèn)每個主表的對象都有一個是外鍵的屬性,可以通過它來查詢到所有屬于主表的子表的信息。這個屬性的名稱默認(rèn)是以子表的名稱小寫加上_set()來表示(上面默認(rèn)以b_set訪問),默認(rèn)返回的是一個querydict對象。
related_name 可以給這個外鍵定義好一個別的名稱
通過子表來查詢主表
B.objects.filter(a=A_id).order_by('-created')
以上這篇Django使用詳解:ORM 的反向查找(related_name)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
python如何查看系統(tǒng)網(wǎng)絡(luò)流量的信息
這篇文章給大家介紹了如何了利用Python查看系統(tǒng)網(wǎng)絡(luò)流量的信息,有需要的朋友們可以參考借鑒。下面來一起看看吧。2016-09-09
pyinstaller打包單文件時--uac-admin選項不起作用怎么辦
這篇文章主要介紹了pyinstaller打包單文件時--uac-admin選項不起作用怎么辦,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04
python神經(jīng)網(wǎng)絡(luò)InceptionV3模型復(fù)現(xiàn)詳解
這篇文章主要為大家介紹了python神經(jīng)網(wǎng)絡(luò)InceptionV3模型復(fù)現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪<BR>2022-05-05
詳談Python中列表list,元祖tuple和numpy中的array區(qū)別
下面小編就為大家分享一篇詳談Python中列表list,元祖tuple和numpy中的array區(qū)別,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-04-04

