Given this model:
class Role(models.Model):
title = models.CharField(max_length=255, verbose_name='Role Title')
parents = models.ManyToManyField("self", symmetrical=False)
skills = models.ManyToManyField(Skill)
What is the most efficient way to get a list of all the 'Skill' objects related to this 'Role' object, and its parents, recursively?
For example, if the Role object in question is 'Manager', it will inherit skills from 'Team Leader', which inherits skills from 'Team Member' etc.