0

複数のドメインでテンプレートを再利用しようとしています。テンプレートは次のようになります。

<div id="emailEntry">
    <Table>
        <tr class="prop">
        <td valign="top" class="name">
            <label for="email" id="email"><g:message code="default.email.label" default="Primary e-mail address* :" id="email" /></label>
        </td>
        <td valign="top" class="value ${hasErrors(bean: instanceToUse, field: 'email', 'errors')}">  
            <g:textField name="email" value="${instanceToUse?.email}"/> 
        </td>
    </tr>       
    </Table>
</div>

私の見解では、このテンプレートを次のように呼び出しています。

<g:render template="/templates/frmEmailTableEntry" />

私のクラス「customer」と「employee」の両方に電子メール属性があります。だから私の質問は、クラス「 customer」と「employee 」のテンプレート「frmEmailTableEntry」を再利用したい場合、テンプレートの「instanceToUse」何を入れるべきかということです。varを宣言してレンダリングする方法について読みましたが、これを渡す方法がわかりません。これを手伝ってください。

前もって感謝します。

4

1 に答える 1

0

テンプレートに何を入れるかは重要ではありません。そのままにしておくと、次のような他のgspで使用できます。

//say the instance you wish to use is "customerInstance"
<g:render template="/templates/frmEmailTableEntry" model="[instanceToUse: customerInstance]" />

これにより、がテンプレートの変数に渡さcustomerInstanceれます。${instanceToUse}

于 2012-06-01T20:48:44.213 に答える