django模板不呈现

时间:2015-12-18 02:35:23

标签: python django templates

我是django的新手。我无法使用两级或多级字典呈现模板。下面是我的视图和模板代码。

来自view.py的代码

myList = {
    'ParentABC': {
        'ABC' : '#'
        }
    }
return render_to_response('index.html', myList)

我试过两个不同的模板,但没有运气: 模板1 -

<ul class="collapsible collapsible-accordion">
        {% for eachCategory in myList %}
        <li class="bold"><a class="collapsible-header  waves-effect waves-teal">{{ eachCategory }}</a>
              <div class="collapsible-body" style="">
                <ul>
                {% for subCat in myList.eachCategory %}
                  <li><a href="#">{{ subCat  }}</a></li>
                {% endfor %}
                </ul>
              </div>
        </li>
        {% endfor %}
        </ul>

模板2-

<ul class="collapsible collapsible-accordion">
    {% for category,value  in myList.items %}
    <li class="bold"><a class="collapsible-header  waves-effect waves-teal">{{ category }}</a>
          <div class="collapsible-body" style="">
            <ul>
            {% for subcategory,value1 in value.items %}
              <li><a href="#">{{ subcategory }}</a></li>
            {% endfor %}
            </ul>
          </div>
    </li>
    {% endfor %}
    </ul>
渲染后,我总是低于html:

<ul class="collapsible collapsible-accordion">

        </ul>

请帮助我。

2 个答案:

答案 0 :(得分:1)

如果要使用键和值迭代对象,或仅使用{% for key, value in object.iteritems %}

,请使用{% for value in object.items %}

这样的东西
<ul class="collapsible collapsible-accordion">
    {% for eachCategory, catValue in myList.iteritems %}
    <li class="bold"><a class="collapsible-header  waves-effect waves-teal">{{ eachCategory }}</a>
          <div class="collapsible-body" style="">
            <ul>
            {% for subCat in catValue.items %}
              <li><a href="#">{{ subCat  }}</a></li>
            {% endfor %}
            </ul>
          </div>
    </li>
    {% endfor %}
    </ul>

答案 1 :(得分:1)

使用以下代码示例

 myList = {
        'myList' : {
    'ParentABC1': {
    'ABC' : '#',
    'DEF' : '#'
    },
    'ParentABC2': {
    'ABC' : '#',
    'DEF' : '#'
    },
        }

    }

<ul class="collapsible collapsible-accordion">
        {% for eachCategory, value in myList.items %}
        <li class="bold"><a class="collapsible-header  waves-effect waves-teal">{{ eachCategory }}</a>
              <div class="collapsible-body" style="">
                <ul>
                {% for subCat in value %}
                  <li><a href="#">{{ subCat  }}</a></li>
        {% endfor %}
        </ul>
              </div>
        </li>
        {% endfor %}
</ul>