2012-05-23 71 views
3

在我的领域类单选按钮,我有一个枚举: -显示枚举在GSP

class Product{ 
    Type type 
    enum Type{ 
    MEDICINE, NON_MEDICINE 
    } 
} 

通过生成默认视图,这表明在create.gsp页面下拉。我的要求是将其显示为创建页面中的一个广播组,从中我可以通过单击单选按钮来选择两个值中的任何一个。任何人都可以提供帮助。 thnks

回答

8

这应该工作:

<g:radioGroup name="type" 
        values="${test.Product$Type?.values()}" 
        labels="${test.Product$Type.values()*.name()}" 
        value="${productInstance?.type?.name()}"> 
    ${it.radio} <g:message code="${it.label}" />&nbsp; 
</g:radioGroup> 

这应该在grails-app/views/product/_form.gsp

+0

你的版本更好,它使用原始枚举的实际值:) –

+0

抱歉,什么是测试值和标签? –

+0

这是我在测试这个产品时将我的产品类放入的包...您的产品类将位于不同的包中,所以显然您需要更改此... –

1

尝试

<g:radioGroup name="type" values="${['MEDICINE', 'NON_MEDICINE']}" value="${currentInstance.type}" labels="${['Medicine', 'Non medicine']}"> 
<span>${it.label} - ${it.radio}</span> 
</g:radioGroup> 
+0

+1取代目前g:select只是打我给它;-) –