从模板中的第一个循环到第二个循环导入字符串值?

时间:2017-03-31 11:22:22

标签: django django-templates

是否能够在模板中将字符串值从第一个循环导入第二个循环?

在第二个循环中,“mydata.data.room”应为mydata.A.room,mydata.B.room,mydata.C.room和mydata.D.room

在词典中

{'mydata': {u'A': {'room': [u'1-1']},
            u'B': {'room': [u'1-1', u'1-2']},
            u'C': {'room': [u'1-1', u'1-2', u'1-3']},
            u'D': {'room': [u'1-1']}}

在模板中

{% for data in mydata %}
    <div id="{{ data }}" class="tab-pane fade">
    {% for room in mydata.data.room  %}
            <h3>{{ room }}</h3>
            <p>Some content.</p>
    {% endfor %}
    </div>
{% endfor %}

2 个答案:

答案 0 :(得分:0)

您的代码无效。我猜你想做的是:

在python代码中:

mydict = {'mydata': {u'A': {'room': [u'1-1']},
        u'B': {'room': [u'1-1', u'1-2']},
        u'C': {'room': [u'1-1', u'1-2', u'1-3']},
        u'D': {'room': [u'1-1']}}

在模板代码中:

{% for key, data in mydict.mydata.items %}
        <div id="{{ key }}" class="tab-pane fade">
        {% for room in data.room  %}
                <h3>{{ room }}</h3>
                <p>Some content.</p>
        {% endfor %}
        </div>
{% endfor %}

答案 1 :(得分:0)

试试这个

    .navbar {
    margin-top:0%;
    background-color: #24265b;
    height:20%;
    position: -webkit-sticky;
    position: sticky;
    top: 0; 
    z-index: 99999;

}

.servlist {
    height: 50%;
    width: 20%;
    float: left;
    background-color: #24265b;

}

.textbox1 {
    height:50%;
    width: 100%;
    background-color: #24265b;

}