2013-07-17 10 views
17

私はネストされたリストを持っています。私はリストを反復して、以下のようにforループ内に保持する必要があります。forループ内のjinja2の範囲

{% for alpha in list %} 
    <div id="{{ loop.index }}"> 
     <div class='sidebar-one'> 
      {% for beta in list[0][2:] %} #I want to iterate through list[0][2:] till list[n][2:] 
       <p> {{ beta[0][0] }} </p> 
      {% endfor %} 
     </div> 
    </div> 
{% endfor %} 

私は範囲を試しましたが運はありません。

TemplateSyntaxError: expected token ':', got '}' 

答えて

42

それはちょうどPythonのようなものだ:私はそれを得る

{% for n in range(n) %} 
    {% for line in check[n][2:] %} 
     <p> {{ beta[0][0] }} </p> 
    {% endfor %} 
{% endfor %} 
+1

OK

{% for n in range(1,n) %} {% for line in check[{{n}}][2:] %} {% endfor %} 

は、それがエラーを投げました。私の間違いはそのnを{{n}}のような中括弧に入れることでした。私はまだ中括弧がここで使われていないのはなぜだろうか?私たちはjinja2ではなく、Pythonではないでしょうか?回答に追加することを忘れないでください。 –

+0

どのように私は最初のループと2番目のもののために終了するのですか? "endfor"は自動的に近いループに近づくでしょうか?私は外側forループの最初と内側の終了のハックがあるかどうか疑問に思っています! –

+0

@ChandanGupta:Jinja2はPythonではありませんが、構文は非常に似ています。ループのことについては、通常のPythonではどうしますか? – Blender

関連する問題