gpt4 book ai didi

java - 领域类中的 Grails 枚举类型

转载 作者:行者123 更新时间:2023-11-30 11:55:02 25 4
gpt4 key购买 nike

我使用 grails 1.3.2 和 hbase..

我有域类,其中一个字段是枚举类型:

class MyDomainClass{

MyEnum enumVal

//....

}

public enum MyEnum {

val1("val1"),
val2("val2")

final String value
MyEnum (String value) {
this.value = value
}
String toString() { value }
String getKey() { name() }
}


<g:form action="create">
<g:select name="enumVal" from="${MyEnum ?.values()}" optionKey="key" />
<g:submitButton name="createOb" value="CreateOb"/>
</g:form>

“创建”操作必须将选定的值保存在数据库中。

当我提交时出现异常:

Cannot cast object 'val1' with class 'java.lang.String' to class 'myPack.MyEnum '

有没有办法将枚举值保存为字符串?

最佳答案

  1. GSP 中“MyEnum”后的空格和错误消息让我怀疑,你能把它从 GSP 中删除吗?
  2. 您不需要 ?,因为 MyEnum 类应该始终存在。
  3. 我相信您不需要 optionKey,尤其是当您覆盖了 MyEnum.toString() 时。
  4. 我们这样从枚举中编写select:

其中 toFriendlyString() 是我们的枚举方法,它返回用户可读的字符串表示形式。

关于java - 领域类中的 Grails 枚举类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5247568/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com