1
我有兩個模型,Person和Classes,這兩個模型都沒有對應的數據庫表(meta managed=False
),但是由自定義查詢填充。Django一對多模型ORM訪問
是否可以使用ORM獲取相關字段。例如:我可以做person.classes並獲取相關記錄嗎?
兩個模型之間的關係是一對多關係。
下面是一個例子: 兩種型號的用戶和部門
Users
ref | name
1 | John
2 | Matt
Department
ref | name | chair
1 | IT | 1
2 | Math | 1
u = User.objects.raw("SELECT ref, name FROM users where ref = 1")
現在,如果我要得到所有部門獲悉u
是一把椅子,我能做到這一點,這樣當我做u.deparments
我獲取記錄? (請注意,這些對象是使用raw sql創建的)。
我能想到的一種方法是通過編寫一個實例方法,但是如果有多個用戶,我會遇到性能問題(N + 1查詢)。
一個對象的數據是使用自定義查詢聚集。 – Dasith
請提供代碼示例。 –
@knbk這是一個原始查詢 – Dasith