Let’s consider that we have three tables in a hierarchical form:
Course
Topic
Sub-Topic
or in code:
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)
What I want is to get list of Courses, Topics and sub-topics to represent in a tree like Navigation system.
I know that select_related() can follow and discover ForeignKeys in any depth. How can I get use of the feature in my scenario ?
If you simply want to output to a template you can use _set e.g. if you passed a list of courses to your template.