【发布时间】:2019-12-08 10:00:32
【问题描述】:
我正在开发一个带有 ktor 应用程序的 Kotlin,并且我使用暴露为 ORM。我有一个引用另一个表的表。这种关系是多对一的。例如:
object Users : IdTable<String>() {
override val id: Column<EntityID<String>> = varchar("user_id", 64).entityId().primaryKey()
val email = varchar("email", 128).uniqueIndex()
val firstName = varchar("first_name", 64)
val lastName = varchar("last_name", 64)
}
&用户考勤表为 -
object UserAttendances : IntIdTable() {
val userId = reference("user_id", Users).index()
val checkInTime = date("check_in")
val checkOutTime = date("check_out")
}
现在,当我尝试插入出勤表时,我不确定如何将插入映射到用户。我尝试了以下 -
StaffAttendances.insert {
it[date] = DateTime.now()
it[checkInTime] = DateTime.now()
it[userId] = userId
}
这给出了一个编译错误,要求的类型是EntityId<String>,但找到了String。关于如何插入参考的任何帮助。这可能是因为我将 String 作为带有 UUID 的 ID 列
【问题讨论】:
标签: kotlin ktor kotlin-exposed