前提・実現したいこと
Play Framework(2.6)で勉強がてらWEBアプリを作成しています。
ユーザー情報を保存しているテーブルからレコードを取得しようとしてエラーが発生しました。
実現したいこととしては、エラーなくユーザー情報を取得することです。
実行環境は以下のとおりです。
Play Framework(2.6)
SkinnyORM(3.0.0)
MySQL
発生している問題・エラーメッセージ
val users: List[User] = User.findAll() val user: User = User.findById(1) のどちらを行っても下記のエラーとなります。(該当IDのレコードはテーブルに存在しています。) Execution exception[[SQLSyntaxErrorException: Unknown column 'u.user' in 'field list']]
該当のソースコード
User.Scala
package models import scalikejdbc._ import skinny.orm._ case class User(id: Option[Long] = None, name: String, email: String, password: String) object User extends SkinnyCRUDMapper[User] { override def tableName = "users" override def defaultAlias: Alias[User] = createAlias("u") private def toNamedValues(record: User): Seq[(Symbol, Any)] = Seq( 'name -> record.name, 'email -> record.email, 'password -> record.password ) override def extract(rs: WrappedResultSet, n: ResultName[User]): User = autoConstruct(rs, n) def create(user: User)(implicit session: DBSession = AutoSession): Long = createWithAttributes(toNamedValues(user): _*) def update(user: User)(implicit session: DBSession = AutoSession): Int = updateById(user.id.get).withAttributes(toNamedValues(user): _*) }
CREATE TABLE文
CREATE TABLE `users` ( `id` BIGINT AUTO_INCREMENT, `name` VARCHAR(64) NOT NULL, `email` VARCHAR(255) NOT NULL UNIQUE, `password` VARCHAR(64) NOT NULL PRIMARY KEY (`id`), UNIQUE (`email` ASC) ) ENGINE = InnoDB;
あなたの回答
tips
プレビュー