我仍在學習Django。任何熟悉Django 1.8或更高版本的人都可以幫助我解決這個問題。我在參加這5臺的問題,我想執行一個查詢,相當於這個SQL查詢:在Django 1.9中加入多個表格
SELECT *
from modelname1 a
join modelname2 b on a.id = b.id
join modelname3 c on c.id = b.id
join modelname4 d on d.id = c.id
join modelname5 on e.id = d.id;
我有這些模型:
class modelname1(models.Model):
modelname1_id = models.AutoField(primary_key = True)
a = models.CharField(max_length = 200)
b = models.CharField(max_length = 200)
class modelname2(models.Model):
modelname2_id = models.AutoField(primary_key = True)
a = models.CharField(max_length = 200)
b = models.CharField(max_length = 200)
c = models.ForeignKey(modelname1)
class modelname3(models.Model):
modelname3_id = models.AutoField(primary_key = True)
a = models.CharField(max_length = 200)
b = models.CharField(max_length = 200)
c = models.ForeignKey(modelname2)
class modelname4(models.Model):
modelname4_id = models.AutoField(primary_key = True)
a = models.CharField(max_length = 200)
b = models.CharField(max_length = 200)
c = models.ForeignKey(modelname3)
class modelname5(models.Model):
modelname5_id = models.AutoField(primary_key = True)
a = models.CharField(max_length = 200)
b = models.CharField(max_length = 200)
c = models.ForeignKey(modelname4)
我不知道怎麼翻譯我想在Django上面的查詢, 我可以使查詢得到相同的答案,但我需要將它分成多個查詢之前得到相同的答案。 非常感謝您的幫助!
我會建議你改變你的想法。您可能不需要「翻譯」您的查詢,只需使用ORM即可獲取您喜歡的任何字段的值。 – Wtower
你最終在你的輸出中尋找哪些字段? – AKS
@AKS - 我想在一個查詢中加入所有表格並且有條件。 –