1

タイル付きのネストされたテンプレートが欲しいのですが、今のところ運がありません。

私のメインテンプレート:

[...]
<div id=body><tiles:insertAttribute name="body"/></div>
[...]

私のネストされたテンプレート:

[...]
<div id=sub><tiles:insertAttribute name="sub"/></div>
[...]

私のビューの定義:

<tiles-definitions>
    <definition name="mainTemplate" template="/mainTemplate.jspx">
    </definition>
    <definition extends="mainTemplate" name="subTemplate">
        <put-attribute name="body" value="/subTemplate.jspx"/>
    </definition>
    <definition extends="mainTemplate" name="myView">
        <put-attribute name="sub" value="blablabla"/>
    </definition>
</tiles-definitions>

私が期待したこと:

<div id=body><div id=sub>blablabla</div></div>

私が得たもの:

<div id=body><div id=sub></div></div>

このテーマに関するタイルのWebサイトのドキュメントを見ましたが、機能させることができません:(

4

1 に答える 1

3

実際、「subTemplate」と「myView」は、「mainTemplate」の両方を拡張する2つの異なる定義です。私が理解していることから、「myView」タイルを「subTemplate」タイル内にネストする必要があります。

あなたはこのようなことを試すことができます:

<tiles-definitions>
    <definition name="mainTemplate" template="/mainTemplate.jspx">
    <definition name="subTemplate" extends="mainTemplate">
        <put-attribute name="body">
            <definition template="/subTemplate.jspx">
                <put-attribute name="myView" value="blablabla" />
            </definition>
        </put-attribute>
     </definition>
</tiles-definition>
于 2012-06-05T19:39:49.360 に答える