Ich habe eine Q & Eine Art von Website in Django mit den folgenden Modellen gebaut:Django: Implementierung von JOIN mit Django ORM?
class Question(models.Model):
title = models.CharField(max_length=70)
details = models.TextField()
class Answer(models.Model):
question_id = IntegerField()
details = models.TextField()
Ich brauche zusammen, um eine bestimmte Frage angezeigt werden mit ihren Antworten. Normalerweise würde ich 2 Abfragen benötigen, um das zu tun:
Question.objects.get(id=1)
Answer.objects.get(question_id=1)[:10]
Ich hoffe, alles mit einer Abfrage abzurufen. In MySQL würde es sein:
SELECT *
FROM Question JOIN Answer ON Question.id=Answer.question_id
WHERE Question.id=1
LIMIT 10
Gibt es trotzdem kann ich dies durch ORM Django tun? Würde extra()
in diesem Fall helfen?
Danke, was ist, wenn wir den Namen des Fremdschlüssels in der zugehörigen Tabelle benötigen, nehmen wir an, Tabelle A ist verwandt mit B und B ist verwandt mit C. (alle Tabellen haben nur "name" und "id"). Wir wollen, dass jeder Eintrag von A Seite durch verwandte C-Tabelle Objekt verbunden wird. –