Django: реализация JOIN с использованием Django ORM?

У меня есть сайт типа Q&A, созданный в Django со следующими моделями:

class Question(models.Model):
    title = models.CharField(max_length=70)
    details = models.TextField()

class Answer(models.Model):
    question_id = IntegerField()
    details = models.TextField()

Мне нужно отобразить конкретный вопрос вместе с его ответами. Обычно для этого мне нужно 2 запроса:

Question.objects.get(id=1)
Answer.objects.get(question_id=1)[:10]

Я надеюсь получить все с помощью одного запроса. В MySQL это будет:

SELECT *
FROM Question JOIN Answer ON Question.id=Answer.question_id
WHERE Question.id=1
LIMIT 10

Можно ли сделать это через ORM Django? Может ли extra () помочь в этом случае?

18
задан Continuation 8 November 2010 в 15:44
поделиться