我堅持嘗試寫一個Django ORM查詢來獲取以下查詢的模擬:Django的 - 連接兩個多到一個關係
vendors = Vendors.objects.select_related('legal_entities') #....and then I want to also get legal_entities_details
我的模型:
class LegalEntitiesDetails(models.Model):
legal_entities = models.ForeignKey(LegalEntities, models.CASCADE)
class LegalEntities(models.Model):
#...Some fields
class Vendors(models.Model):
legal_entities = models.ForeignKey(LegalEntities, on_delete=models.CASCADE)
我無法弄清楚如何通過select_related做到這一點。您看到的問題是我無法編寫簡單的鏈式selected_related,因爲供應商和legal_entities_details與legal_entities相關。請忍受這個問題,我是Django的新手。
那麼我該如何參考legal_entities_details? –
我嘗試類似sp.legal_entities__legal_entities_details –
我不完全確定camelCase是如何爆炸的。試試prefetch_related('legal_entities__legalentitiesdetails_set')或prefetch_related('legal_entities__legal_entities_details_set')。無論哪種方式,不要忘記在最後追加_set。 – okolimar