【发布时间】:2018-03-19 13:36:58
【问题描述】:
我的控制器定义如下
class UserController @Inject()(userRepo: Repository[UUID, User],cc:
ControllerComponents)(implicit exec: ExecutionContext) extends
AbstractController(cc)
我想将Repository[UUID, User] 注入到这个组件中。我想我必须创建一个应用程序加载器并扩展 BuiltInComponentsFromContext 并定义我的路由。
class AppComponents(context: Context) extends (context) with CassandraRepositoryComponents {
lazy val applicationController = new controllers.UserController(userRepository)
lazy val assets = new controllers.Assets(httpErrorHandler)
override def router: Router = new Routes(
httpErrorHandler,
applicationController,
assets
)
}
我的代码没有编译,因为我必须在 lazy val applicationController = new controllers.UserController(userRepository) 中创建 UserController 时传递 ComponentController。但我不知道从哪里得到这个ComponentController。我该怎么办?
【问题讨论】: