Django使用詳解:ORM 的反向查找(related_name)
先定義兩個(gè)模型,一個(gè)是A,一個(gè)是B,是一對(duì)多的類型。
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)
如果我們要查詢一個(gè)A擁有哪些B的話,那我們要怎么做呢
通過主表來查詢子表
A.objects.get(id=A_id).test.all().order_by('-created'),
django 默認(rèn)每個(gè)主表的對(duì)象都有一個(gè)是外鍵的屬性,可以通過它來查詢到所有屬于主表的子表的信息。這個(gè)屬性的名稱默認(rèn)是以子表的名稱小寫加上_set()來表示(上面默認(rèn)以b_set訪問),默認(rèn)返回的是一個(gè)querydict對(duì)象。
related_name 可以給這個(gè)外鍵定義好一個(gè)別的名稱
通過子表來查詢主表
B.objects.filter(a=A_id).order_by('-created')
以上這篇Django使用詳解:ORM 的反向查找(related_name)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- django框架使用orm實(shí)現(xiàn)批量更新數(shù)據(jù)的方法
- Django ORM 查詢表中某列字段值的方法
- Django基于ORM操作數(shù)據(jù)庫(kù)的方法詳解
- Django ORM 聚合查詢和分組查詢實(shí)現(xiàn)詳解
- Django ORM框架的定時(shí)任務(wù)如何使用詳解
- Django中ORM表的創(chuàng)建和增刪改查方法示例
- django的ORM模型的實(shí)現(xiàn)原理
- 基于Django ORM、一對(duì)一、一對(duì)多、多對(duì)多的全面講解
- django 常用orm操作詳解
- 淺談django orm 優(yōu)化
- Django中ORM的基本使用教程
相關(guān)文章
python如何查看系統(tǒng)網(wǎng)絡(luò)流量的信息
這篇文章給大家介紹了如何了利用Python查看系統(tǒng)網(wǎng)絡(luò)流量的信息,有需要的朋友們可以參考借鑒。下面來一起看看吧。2016-09-09pyinstaller打包單文件時(shí)--uac-admin選項(xiàng)不起作用怎么辦
這篇文章主要介紹了pyinstaller打包單文件時(shí)--uac-admin選項(xiàng)不起作用怎么辦,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04python神經(jīng)網(wǎng)絡(luò)InceptionV3模型復(fù)現(xiàn)詳解
這篇文章主要為大家介紹了python神經(jīng)網(wǎng)絡(luò)InceptionV3模型復(fù)現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪<BR>2022-05-05詳談Python中列表list,元祖tuple和numpy中的array區(qū)別
下面小編就為大家分享一篇詳談Python中列表list,元祖tuple和numpy中的array區(qū)別,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-04-04對(duì)python判斷是否回文數(shù)的實(shí)例詳解
今天小編就為大家分享一篇對(duì)python判斷是否回文數(shù)的實(shí)例詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-02-02