Scala Play ve Slick'te, veritabanında bir kayıt oluşturulduktan sonra bir OK yanıtı göndermek istiyorum, şu ana kadar:Scala Oynat ve Slick'te, yanıt göndermeden önce bitirme isteği nasıl alınır
def createItem = Action(BodyParsers.parse.json) {
request => {
val result = request.body.validate[Item]
result.fold(
invalid => {
val problem = new Problem(BAD_REQUEST, "Invalid Item JSON", invalid.toString)
returnProblemResult(BadRequest, problem)
},
item => {
service.create(item)
// TODO check for success before sending ok
Ok.as(ContentTypes("DEFAULT"))
}
)
}
}
Ve Service.Create yöntemi içinde : Şu anda, OK yanıtı hiçbir yeni öğe oluşturulduğunda bile gönderilen olsun
def create(item: Item): Future[Unit] = {
exists(item.id).map {
case true =>
case _ => db.run(Item.table += cc)
}
}
. Bir öğe oluşturulduğunda sadece OK'e dönmesini istiyorum. Öğe zaten mevcutsa veya başka hatalar varsa (ör. Veritabanı hataları), createItem yöntemi ne tür bir sorun oluştuğunu bilmeli ve Hata iletisi ile bir Sorun sonucunu döndürmelidir.