Grails 格雷斯戈姆公司;枚举类型

Grails 格雷斯戈姆公司;枚举类型,grails,groovy,enums,Grails,Groovy,Enums,我在Grails中使用枚举时遇到问题: 我尝试在grails域对象中使用枚举 代码: 您需要更改视图,例如在create.gsp中的select上添加optionValue=“value” 您不需要: String toString() { value } String getKey() { name() } 您需要有一个getValue(),因此将private final String value更改为final String value 更多信息(西班牙语):如果您正在控制器中

我在Grails中使用枚举时遇到问题: 我尝试在grails域对象中使用枚举

代码:


您需要更改视图,例如在create.gsp中的select上添加
optionValue=“value”

您不需要:

String toString() {
  value
}

String getKey() {
  name()
}
您需要有一个
getValue()
,因此将
private final String value
更改为
final String value


更多信息(西班牙语):

如果您正在控制器中使用
scaffold=true
,则还可以通过编辑
renderditor.template
文件来修改在视图中生成选择标记的模板。为此:

  • grails安装模板
  • 编辑文件
    src/templates/scaffolding/renderditor.template
  • 编辑方法
    renderumeditor(…)
    并将
    optionKey=\“key\”
    添加到选择标记的选项中

  • 我回答自己的问题是因为其他用户可以发现它很有用: 我查看了有关枚举的grails提示(页面底部) 在我的实现中,我忘记了g:select标记中的optionKey=“key”


    添加所有工作都很顺利

    您使用的是什么版本的Grails?很抱歉,我无法访问您从我的工作场所提供的链接。我已经能够解决以下问题:我忘记了g:select标记中的optionKey=“key”
    Failed to convert property value of type [java.lang.String] to required type [it.weservice.tools.kanban.Priority] for property priority; nested exception is java.lang.IllegalArgumentException: Cannot convert value of type [java.lang.String] to required type [it.weservice.tools.kanban.Priority] for property priority: no matching editors or conversion strategy found
    
    String toString() {
      value
    }
    
    String getKey() {
      name()
    }