我在Django中建立了一个问答类型的网站,使用以下模型:
class Question(models.Model):
title = models.CharField(max_length=70)
details = models.TextField()
class Answer(models.Model):
question_id = IntegerField()
details = models.TextField()
我需要展示一个特定的问题以及它的回答。通常情况下,我需要进行两个查询:
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
是否有办法通过Django的ORM来实现这一点?
在这种情况下,extra()
有用吗?
question_id
只是一个整数,并且Answer
没有提供到Question
的models.ForeignKey
字段,那么这怎么能起作用呢? - Kurt Bourbaki