【问题标题】:Reusing template over multiple domains在多个域上重用模板
【发布时间】:2012-06-01 20:43:06
【问题描述】:

我正在尝试在多个域中重复使用模板。 模板如下所示:

<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”重用模板“frmEmailTableEntry”,我应该把什么放到“instanceToUse强>”在模板中。 我读到了关于声明 var 的渲染,但我不太确定如何通过它。请帮我解决这个问题。

提前致谢。

【问题讨论】:

  • 查看自定义标签库。他们最适合这类问题。

标签: templates grails reusability


【解决方案1】:

在模板中放入什么并不重要。如果你保持原样,你可以像这样在其他 gsp 中使用它:

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

这会将customerInstance 传递到模板中的${instanceToUse} 变量中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-09
    • 1970-01-01
    • 2020-01-01
    • 2012-11-12
    相关资源
    最近更新 更多