Это может быть ваша модель класса
class Note(models.Model):
note_text = models.CharField(max_length=255)
parent_id = models.ForeignKey('self', models.DO_NOTHING)
Тогда функция может быть такой:
def recursive(note, child_list):
note_children = Note.objects.filter(parent=note)
child_list.append(note.id)
if note_children.count()==0:
return child_list
for n in note_children:
recursive(n, child_list)
return child_list