Уведомления

Группа в Telegram: @pythonsu

#1 Май 31, 2010 21:53:58

blackstone
От:
Зарегистрирован: 2009-06-25
Сообщения: 13
Репутация: +  0  -
Профиль   Отправить e-mail  

Как написать рекурсивный метод

Здравствуйте!

Python начал изучать относительно недавно, поэтому прошу совета.
Есть несложная модель, где категории хранятся в виде дерева

class Category(models.Model):
parent = models.ForeignKey("self", blank=True, null=True, related_name="child_set")
name = models.CharField(max_length=100, verbose_name="название")
Подскажите пожалуйста как написать рекурсивный метод, чтобы вывести для вложенной директории имя, в котором будут все ее предки. Например Главная::Книги::ИТ::Web::Дизайн.

Заранее спасибо.



Офлайн

#2 Июнь 1, 2010 08:51:44

Aries
От:
Зарегистрирован: 2010-02-26
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

Как написать рекурсивный метод

def recurse(id):
data = # Выборка из базы, где parent = id
for i in data:
print i['id']
recurse(i['id'])
Простая рекурсия. Думаю обработаешь напильничком и будет работать.
Хотя можно и без рекурсии обойтись, а закрутить циклом, что было бы вернее.



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version