如何通过Kotlin暴露ORM使用Postgresql枚举类型?

我已经添加了一些Postgresql类型作为扩展Exposed。 它有两个名为enumerationenumerationByName就绪类型。 我测试了两个都没有成功将postgre枚举类型映射到Kotlin枚举类。 在阅读和写作都会产生错误

 enum class TicketStatus(val status: String) { Open("open"), Close("close"), InProgress("in_progress") } class Ticket(id: EntityID<UUID>) : Entity<UUID>(id) { companion object : EntityClass<UUID, Ticket>(Tickets) var geom by Tickets.geom var description by Tickets.description var status by Tickets.status var createdAt by Tickets.createdAt var updatedAt by Tickets.updatedAt var owner by Tickets.owner } 

阅读时:

 java.lang.IllegalStateException: open is not valid for enum TicketStatus 

One Solution collect form web for “如何通过Kotlin暴露ORM使用Postgresql枚举类型?”

您应该声明状态列如下:

 object Tickets: Table() { val status = enumeration("status", TicketStatus::class.java) // will create integer column val status = enumerationByName("status", TicketStatus::class.java) // will create varchar with TicketStatus names } 
  • @Param不能在Spring Data JPA中工作
  • Kotlin&Hibernate IllegalArgumentException:无法将字符串字段Job.name设置为Job
  • Vert.x使用BLOB和休眠区分数据库中的数据
  • Kotlin language will be the best programming language for Android.