<ul tal:repeat="item items">
<li tal:content="item" />
</ul>
というテンプレートに対して、
$tal->items => [1, 2, 3,...]
という値を渡すと、
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
...
</ul>
となってくれるのに、
<ul tal:repeat="item parent/items">
<li tal:content="item" />
</ul>
というテンプレートに対して、
$tal->parent = [
'items' => [1, 2, 3,...]
];
という値を渡すと、
<ul><li>1</li></ul>
<ul><li>2</li></ul>
<ul><li>3</li></ul>
...
ってなる。
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
...
</ul>
となってほしいのに...
諸元 PHPTAL-1.2.2
これは:
こうなりました:
これも:
こう:
コンテキスト変数の構造は関係ないっぽいです。
TALで繰り返しを正しくやる方法は:
で、なんでこういうふうに、外枠ではなく要素に
repeat
が付くのかというと、のとき、
というHTMLを出力したい時にどう書くかを考えると、
repeat
を入れ物ではなく「繰り返す要素」にしないといけない仕様の意図を理解できます。