0
让我们考虑,我们在一个分层形式三个表:Django的,查询数据时,我们有表层次
Course
Topic
Sub-Topic
或代码:
class Course(models.Model):
name = models.CharField(max_length = 100)
class Topic(models.Model):
name = models.CharField(max_length = 100)
course = models.ForeignKey('Course' , null = True , blank = True)
class SubTopic(models.Model):
name = models.CharField(max_length = 100)
topic = models.ForeignKey('Topic' , null = True , blank = True)
我想要的是让在树中表示的课程,主题和子主题列表,如导航系统。
我知道select_related()
可以按照在任何深度发现ForeignKeys
。我如何在我的场景中使用该功能?
不错..所以我只需要使用'Course.objects.select_related()'或类似的视图取得课程,并将它们传递给模板..对吗? – Soask 2012-07-09 12:01:23
Course.objects.all()会这样做,select_related只是预先获取相关的FK数据,而不是稍后访问它时。 https://docs.djangoproject.com/en/dev/ref/models/querysets/#select-related – JamesO 2012-07-09 12:05:39