Grails如何在表单中显示不同的链接名称

时间:2013-09-29 02:41:56

标签: grails

在我的域中,我与库存和库存物品有一对多的关系。这是gsp的片段。它显示分配给特定库存的每个库存物料。

<g:if test="${inventoryInstance?.inventoryItem}">
    <li class="fieldcontain">
        <span id="inventoryItem-label" class="property-label"><g:message code="inventory.inventoryItem.label" default="Inventory Item" /></span>            
            <g:each in="${inventoryInstance.inventoryItem}" var="i">
                <span class="property-value" aria-labelledby="inventoryItem-label">
                   <g:link controller="inventoryItem" 
                           action="show" 
                           id="${i.id}">${i?.encodeAsHTML()}
                   </g:link>
                </span>
            </g:each>       
    </li>
</g:if>

问题是显示的链接是package.InventoryItem:1

如何将其更改为InventoryItem的名称(我的数据库中有一个名称行)

1 个答案:

答案 0 :(得分:0)

${i.name?.encodeAsHTML()}

如果i为空,那么当您使用i.id时,您将获得正确的NPE。此外,您不应该迭代inventoryItems的集合,期望它有一个空项。 :)

查看second example的答案。

如果您希望i默认返回name,则必须覆盖我不会做的toString()