2
我使用Playframework 2.0(scala版本),我想在我的控制器之一中覆蓋「BadRequest」方法。 我控制器延伸的特點:Playframework:覆蓋BadRequest
package controllers
import play.api._
import play.api.mvc._
import play.api.libs.json.JsValue
import play.api.libs.json.JsObject
/*
* Simple trait to factor common code used by all controllers...
*/
trait AbstractController extends Controller {
// Personal useful methods
// ...
// Implementation of an override of BadRequest ?
}
我的控制器:
package controllers
import play.api._
import play.api.mvc._
import play.api.Play.current
import play.api.libs.json._
import play.api.libs.json._
import play.api.libs.concurrent.Promise
object MyController extends AbstractController
{
def myFunc (s: String) = {
BadRequest(s) // should return what I'll define in MY BadRequest implementation
}
}
我想要做什麼:執行錯誤請求的新的行爲舉止(即錯誤返回細節JSON)只的控制器擴展AbstractController。 播放文檔建議在全局對象(擴展GlobalSettings)中執行該操作並覆蓋onBadRequest方法。但我不想要一個如此全局的方法......只能在特定的控制器中使用。
什麼是最佳解決方案?
感謝您的幫助。 Greg
金,你是對的,我犯了一個錯誤:使用* def *而不是* val *。 – Greg