Scala Slick Codegen пользовательские имена
Я использую Slick Codegen для генерации определений таблиц для myMySql DB. Как я могу переопределить соглашения о присвоении кодов именам slick? Он генерирует следующий код для объектов запроса таблицы:
lazy val User = new TableQuery(tag => new User(tag))
Я хочу, чтобы это выглядело так:
lazy val slickUser = new TableQuery(tag => new User(tag))
PS Я видел этот пример: https://github.com/slick/slick-codegen-customization-example, но мне интересно, есть ли более простой способ добиться этого?
1 ответ
Решение
Нет более "легкого" пути. По крайней мере, я не знаю ни одного. Но вы можете найти этот плагин sbt полезным: sbt-slick-codegen. Ваш slickCodegenCodeGenerator
в build.sbt
будет выглядеть так (непроверенный):
slickCodegenCodeGenerator := { (model: m.Model) =>
new SourceCodeGenerator(model) {
override def tableName = (dbName: String) => "slick" + dbName.capitalize
}
}