§Uygulama global ayarları
§Global nesnesi
Projenizde bir Global
nesnesi tanımlamak uygulamanız için global ayarları yönetmenizi sağlar. Bu nesne varsayılan (boş) pakette tanımlanmalıdır ve GlobalSettings
’i extend etmelidir.
import play.api._
object Global extends GlobalSettings {
}
İpucu:
application.global
yapılandırma ayarını kullanarak özel birGlobalSettings
gerçeklemesi de belirtebilirsiniz.
§Uygulama başlangıç ve bitiş olaylarına kanca atmak
Uygulama yaşam döngüsündeki olaylardan haberdar olmak için onStart
ve onStop
metotlarını override edebilirsiniz:
import play.api._
object Global extends GlobalSettings {
override def onStart(app: Application) {
Logger.info("Application has started")
}
override def onStop(app: Application) {
Logger.info("Application shutdown...")
}
}
§Uygulama hata sayfası belirtmek
Uygulamanızda bir exception oluştuğunda onError
metodu çağrılır. Varsayılan davranış dahili framework hata sayfasını kullanmaktır:
import play.api._
import play.api.mvc._
import play.api.mvc.Results._
import scala.concurrent.Future
object Global extends GlobalSettings {
override def onError(request: RequestHeader, ex: Throwable) = {
Future.successful(InternalServerError(
views.html.errorPage(ex)
))
}
}
§Bulunmayan action’ları ve hataları ele almak
Eğer framework bir istek için bir Action
bulamazsa onHandlerNotFound
metodu çağrılır:
import play.api._
import play.api.mvc._
import play.api.mvc.Results._
import scala.concurrent.Future
object Global extends GlobalSettings {
override def onHandlerNotFound(request: RequestHeader) = {
Future.successful(NotFound(
views.html.notFoundPage(request.path)
))
}
}
Bir yönlendirme bulunduğunda fakat istek parametrelerini bağlamak mümkün olmadığında onBadRequest
metodu çağrılır:
import play.api._
import play.api.mvc._
import play.api.mvc.Results._
import scala.concurrent.Future
object Global extends GlobalSettings {
override def onBadRequest(request: RequestHeader, error: String) = {
Future.successful(BadRequest("Bad Request: " + error))
}
}
Sonraki: İsteklerde araya girmek
Dokümantasyonun bu çevirisi Play ekibi tarafından yapılmamaktadır. Eğer bir hata bulduysanız, bu sayfanın kaynak kodu burada bulunmaktadır. Dokümantasyon yönergelerini okuduktan sonra lütfen katkı yapmaktan çekinmeyin.