基本的には自動生成したmodelを使うのですが、どうしてもっていう時に便利な小技です。
SELECTの結果の別名を短縮したくないとき
そこまで性能にこだわってなく、SQLログのみやすさを重視する場合の設定方法です。
object User extends SQLSyntaxSupport[User] {
/** 短縮名を使用しない。*/
override def useShortenedResultName: Boolean = false
//略
}
useShortenedResultNameをoverrideして書き換えることで普通のSQLにできます。
カラム名が特殊すぎてうまくマッピングできないとき
DBのカラム名をどうしても変えられないときは、手動マッピングを定義することで回避することができます。キーには正規表現も使えるみたいです。
object User extends SQLSyntaxSupport[User] {
/** 解決できない名前のマッピング定義。*/
override def nameConverters: Map[String, String] = Map(
"nameKL" -> "name_k_l",
"nameKF" -> "name_k_f"
)
// 略
}