Я играю с django и python, и здесь у меня возникло некоторое препятствие. Я запрашиваю свою модель и возвращаю объекты, а затем выполняю некоторые простые операции с результатами и возвращаю их в представление. После 2-го запроса дочерние элементы для категории форума дублируются, и я понятия не имею, почему это происходит.
ForumBuilder class , который формирует список категорий и добавляет форумы для этой категории
class ForumBuilder:
def childern(self, parent, forums):
for forum in forums:
if forum.parent is None or parent.id != forum.parent.id:
continue
parent.childs.append(forum)
def build(self, forums):
categories = []
for forum in forums:
if forum.parent is None:
categories.append(forum)
self.childern(forum, forums)
return categories
Индекс просмотра
def index(request):
forums = Forum.objects.all().order_by('-order')
builder = ForumBuilder()
return render_to_response('forums/index.html', {'categories': builder.build(forums)})