我正在将 Scala Play 应用程序迁移到 2.5,并且目前正在将我的组件移动到依赖注入。还有一个地方我不知道该怎么做。我在伴随对象中定义了一个 PathBindable 隐式转换:
object Task {
implicit def pathBindable(implicit stringBinder: PathBindable[String]) =
new PathBindable[Task] {
...
}
}
PathBindable 的实现需要从存储库中查找对象,但是我还没有找到一种方法来依赖注入存储库。作为一种解决方法,我正在使用现已弃用的 Play 对象:
val tasks = Play.application(Play.current).injector.instanceOf[TasksRepository]
任何想法如何正确解决这个问题?