質問

<div tal:define="number python: 1">
<tal:block repeat="item s_items">
    <div tal:define="number python: number + 1">     
         <div tal:content="python: number">none</div>
     </div> 
</tal:block>
</div>

こんにちは、常に2を表示します。しかし、私は2 3 4 5を見せたいです...どうすればよいですか?ありがとう

役に立ちましたか?

解決

遅れて申し訳ありませんが、ようなことができます。

<div tal:define="global number python: 1">
<tal:block repeat="item s_items">
<div tal:define="global number python: number + 1">     
     <div tal:content="python: number">none</div>
 </div> 
</tal:block>
</div>

他のヒント

すみません、少し遅れています;-)

これは繰り返し変数でより良い解決策ではないでしょうか?

<tal:loop repeat="item s_items">
    <div tal:content="repeat/item/number">1</div>
</tal:loop>

(「ブロック」の代わりに「ループ」は味の問題です...)

「繰り返し」の後の名前は、iterator変数「アイテム」の名前です。 「番号」は1で始まり、インデックス」は0から始まります(もっとあります)。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top