2015-06-29 4 views
0

Я использую шаблон django для рендеринга моего иерархического дерева на веб-странице. В процессе оказания дерева я вижу эти странные пробелы между узлами:Как отлаживать странные артефакты в шаблоне django?

enter image description here

Вот мой рекурсивный шаблон:

index.html:

<ul class="Container"> 
    <li class="IsRoot"> 
     <div class="Expand"> 
     </div> 
     <div class="Content"> 
      Содержание 
     </div> 
    </li> 
    {% include 'list.html' with data=list %} 
</ul> 

и list.html (в качестве рекурсивной части):

<ul class="Container"> 
    <li class="Node ExpandClosed"> 
     <div class="Expand"></div> 
     <div class="Content"> 
      <a href="/help/{{data.name}}"> 
       {{data.content}} 
      </a> 
     </div> 
     {% for item in data.decendent %} 
      {% include 'list.html' with data=item %} 
     {% endfor %} 
    </li> 
</ul> 

Как связаться с d ebug, что с этим шаблоном и в какой период времени это происходит? Как вы можете видеть, я не генерирую никаких пробелов в этом шаблоне.

ответ

1

Пустое пространство не является проблемой, и это не вызывает пробелы в рендеринговом дереве. Причина этого заключается в том, что вы размещаете ul элементов непосредственно внутри ul s, что, строго говоря, не имеет значения: они должны быть внутри li s.

+0

К сожалению, это предположение, вероятно, правильно, но в моем случае это не решает мою проблему и, кроме того, нарушает макет. В некотором смысле, как я описал это выше, он отображает эту структуру: http://take.ms/sj67a Когда я пытаюсь обернуть ul в list.html в li, как здесь: http://take.ms/WqJLu it повреждается: http://take.ms/sN2iT Где я ошибаюсь? P.S. Дерево было реализовано как здесь: http://javascript.ru/ui/tree (вы можете посмотреть на него в конце документа) – paus

Смежные вопросы