val auth = for{....} yield {....}
val redirect : Result = Redirect(routes.PageController.landing())
auth.getOrElse{
Future(redirect)
}
错误:
/home/orkun/Workspace/DatabaseProject/app/controllers/PageController.scala:104:
type mismatch;
found : scala.concurrent.Future[Object]
required: scala.concurrent.Future[play.api.mvc.Result]
编译器给我这个错误。我不知道为什么我会检查每一件事。它运作正常。
答案 0 :(得分:2)
auth
的类型不是Future[Result]
,而是Future[T]
,其中T
与Result
不共享父类}。这使getOrElse
将公共父推断为java.lang.Object
,使得返回类型不正确。
您需要修正for-yield
声明。