Grails3-f:table-如何显示相关类的属性

Grails3-f:table-如何显示相关类的属性,grails,web,field,Grails,Web,Field,有两个简单的类: class Entity{ Integer id Status status String type } class Status{ Integer id String name } 我只需要替换实体列表中状态字段的表示形式并进行编辑-而不是my.appStage:1->normal 如何操作?在以下目录中创建一个名为_displayWrapper.gsp的文件: /views/entity/status 然后在文件中添加以下内容: ${value.name} <

有两个简单的类:

class Entity{
Integer id
Status status
String type
}

class Status{
Integer id
String name
}
我只需要替换实体列表中状态字段的表示形式并进行编辑-而不是my.appStage:1->normal 如何操作?

在以下目录中创建一个名为_displayWrapper.gsp的文件:

/views/entity/status
然后在文件中添加以下内容:

${value.name}
<div class="fieldcontain required">
    <label for="status">Status</label>
    <g:select name="status" from="${Status.all}" optionValue="name" optionKey="id" value="${entity?.status}"/>
</div>
假设您只想打印文本“正常”

还有其他方法可以实现这一点,请参阅

问题后更新:

对于f:all,您可以将_wrapper.gsp添加到上述目录,并添加以下内容:

${value.name}
<div class="fieldcontain required">
    <label for="status">Status</label>
    <g:select name="status" from="${Status.all}" optionValue="name" optionKey="id" value="${entity?.status}"/>
</div>

谢谢,迈克,现在f:table已经清楚了,但是f:all呢?文档无效。计算第[3]行的表达式[Status.all]时出错:无法获取null object的属性“all”。我不知道您的包名,您必须从=${my.app.Status.all}导入它们-现在可以了,谢谢!无论如何,更好的文档将是有用的。同意,您必须在代码中仔细研究一下,找出要添加的gsp模板,这并不理想