2016-07-25 110 views
-1

設置ID爲div的HTML文件:燒瓶模板在for循環中

{% for elems in result2 %} 

     <div style="border:1px solid green;"> 

     {% for elem in elems %} 

      {{ elem }} 

     {%endfor%} 

     </div><br> 

{%endfor%} 

我想給id<div>,當你看到這裏,每個ID應設置爲{{ elem.1 }}

行將在單獨的DIV進行打印,所以在這裏我們將有3次下潛第一div的ID是1作爲第一行的{{ elem.1 }}爲1,....

(1, 1, 'text') (2, 1, 'text') (3, 1, 'text') (4, 1, 'text') 

(5, 2, 'text') (6, 2, 'text') 

(7, 3, 'text') (8, 3, 'text') 

但打開div標籤之前打印{{ elem }} ro {%endfor%}之後,所以我該怎麼做?

+1

這是您發佈在先權利同樣的問題?這個答案呢? http://stackoverflow.com/a/38564134/3762142 –

+0

看來你不明白我的主要問題。他們有區別。 – niloofar

+0

這是一個嵌套for循環。我想在第一個循環中訪問第二個循環內的元素。 – niloofar

回答

1

我想你可以只使用id="{{ elems[0][1] }}"

+0

是的,這是我需要的,謝謝。 – niloofar

+0

@MadRabbit:有沒有理由用點符號混合下標?如果一致,例如'{{elems [0] [1]}}或'{{elems.0.1}}'不是更好嗎? – mhawke

+0

@mhawke你是對的,沒有理由,從一眼就可以看出,我認爲'.1'只是元素的常規屬性。 – MadRabbit

1

被用於result2的數據結構目前還不清楚,但假設這是你應該能夠到達的第一個元組的第二個元素的元組的列表清單每個列表與elems.0.1。在模板:

{% for elems in result2 %} 
     <div id="{{ elems.0.1 }}"" style="border:1px solid green;"> 
     {% for elem in elems %} 
      {{ elem }} 
     {%endfor%} 
     </div><br> 
{%endfor%} 

在這裏,我假設result2是這樣的:

>>> result2 = [[(1, 1, 'text'), (2, 1, 'text'), (3, 1, 'text'), (4, 1, 'text')], 
      [(5, 2, 'text'), (6, 2, 'text')], 
      [(7, 3, 'text'), (8, 3, 'text')]] 

>>> print(render_template_string(template, result2=result2)) 


    <div id="1" style="border:1px solid green;"> 

      (1, 1, 'text') 

      (2, 1, 'text') 

      (3, 1, 'text') 

      (4, 1, 'text') 

    </div><br> 

    <div id="2" style="border:1px solid green;"> 

      (5, 2, 'text') 

      (6, 2, 'text') 

    </div><br> 

    <div id="3" style="border:1px solid green;"> 

      (7, 3, 'text') 

      (8, 3, 'text') 

    </div><br> 
+0

是的,謝謝。 – niloofar