1

我正在使用 slick codegen 为 myMySql db 生成表定义。如何覆盖 slick 的 codegen 命名约定?它为表查询对象生成以下代码:

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 ,但我想知道是否有更简单的方法来实现这个?

4

1 回答 1

1

没有“更简单”的方法。至少我不知道一个。但是你可能会发现这个 sbt 插件很有用:sbt-slick-codegen。你slickCodegenCodeGenerator的 inbuild.sbt看起来像这样(未经测试):

slickCodegenCodeGenerator := { (model:  m.Model) =>
  new SourceCodeGenerator(model) {
    override def tableName = (dbName: String) => "slick" + dbName.capitalize
  }
}
于 2016-12-08T08:55:43.993 回答