我们想用我们自己的错误页面覆盖标准的播放错误页面。不幸的是,即使我们希望在开发过程中保留信息丰富的调试错误页面,覆盖onError文件中的Global也会在所有模式下替换错误页面。如何检测开发模式以保留该模式下的内置行为?

最佳答案

播放对象具有帮助程序方法,可用于检查当前应用程序模式。

import play.api._

object Global extends GlobalSettings {
  override def onError(request: RequestHeader, e: Throwable): Future[SimpleResult] = {
    if (!Play.isDev)
      Future.successful(InternalServerError(views.html.customErrorPage()))
    else
      super.onError(request, e)
  }
}

10-07 15:26