【发布时间】:2020-07-06 16:39:34
【问题描述】:
我们使用以环境名称为前缀的数据库表名,例如: 而不仅仅是“Cities”,我们还有“ci_Cities”、“dev_Cities”和“prod_Cities”。 p>
问题是 Schema 定义是基于 Kotlin 对象的,这在使用中很好,但不允许我简单地在例如注入表前缀。构造函数。
那么问题是如何在 Kotlin-Exposed 中实现这样的功能?
【问题讨论】:
-
请查看this issue的cmets
-
解决上述问题的主要是不能轻易地从外部提供价值。因为 Schema 是对象,所以您不能以简单干净的方式向该 Schema 对象提供当前环境变量。在对象上设置值很糟糕,而且根本不起作用:当 Table() 构造函数启动时, tableName 已经作为初始化的一部分被调用。我应该如何使用来自例如的值初始化 internalTableName Spring @Value("someproperty")?
标签: kotlin kotlin-exposed