play-slick
プラグインを使用してmySQL
データベースと対話しようとしています。すべては私がコードをコンパイルするたびに得る[warn]
以外の期待どおりに動作します。この行でPlay 2.5プレイスケープのための依存性注入データベース設定
:val dbConfig = DatabaseConfigProvider.get[JdbcProfile](Play.current)
警告がある:method current in object Play is deprecated: This is a static reference to application, use DI instead
。
私はdependency injectionを使用してConfigurationを定義してinject()メソッドを追加しようとしましたが、機能しません。私は推奨されませんPlay 2.5
import play.api.Play
import play.api.db.slick.DatabaseConfigProvider
import scala.concurrent.Future
import slick.driver.JdbcProfile
import slick.driver.MySQLDriver.api._
import scala.concurrent.ExecutionContext.Implicits.global
case class User(
id: Long,
firstName: String,
lastName: String,
mobile: Long,
email: String
)
class UserTableDef(tag: Tag) extends Table[User](tag, "users") {
def id = column[Long]("id", O.PrimaryKey,O.AutoInc)
def firstName = column[String]("first_name")
def lastName = column[String]("last_name")
def mobile = column[Long]("mobile")
def email = column[String]("email")
override def * =
(id, firstName, lastName, mobile, email) <>(User.tupled, User.unapply)
}
object Users {
val dbConfig = DatabaseConfigProvider.get[JdbcProfile](Play.current) //<-- PROBLEM
val users = TableQuery[UserTableDef]
def get(id: Long): Future[Option[User]] = {
dbConfig.db.run(users.filter(_.id === id).result.headOption)
}
}
で
play-slick
を使用した場合2.5DB構成を再生する方法です? – summerNight
@summerNight ....ユーザーに別のクラスにレポを注入して使用してください。プレイ2.5と依存性注入ガイド – pamu
@ f.g:他のオブジェクトからexist()メソッドを呼び出すにはどうすればよいですか?オブジェクトの注入はできません。 –