[英]how to preserve a object in play framework 2.1
我的問題是我需要保留從A控制器獲取的對象列表,該控制器在VIEW中發送對象的ID和這些對象的一些基本數據,在視圖中 ,我需要選擇一行(描述一個對象在列表中)存儲到數據庫中,然后將此ID帶到控制器B , 控制器B調用保存的對象列表,並從數據庫中的選定對象中獲取該對象,然后保存。
Controller A{
List<X> listX = math_function();
return ok( _view.render(listX));
}
view.scala.html
@for(listX -> X){
<td id="@x.id"> @x.name</td>
}
Controller B{
...
listX = getPreserveLists();
x = ListX.get(get_id);
x.save()
...
}
我想知道如何保存這些對象。 謝謝。
一種選擇是使用此處描述的play.api.cache.Cache
對象。
您可以將數據存儲在緩存中:
// if listX could be different for every user,
// you could use user.login as a key
Cache.set(user.login, listX)
然后您可以稍后檢索listX
:
val maybeLisX: Option[List[X]] = Cache.getAs[List[X]](user.login)
我想補充一點,這僅在計算listX是一項昂貴的操作時才值得做。 如果listX對於相同的輸入可能不同,則您絕對不希望這樣做。 在這種情況下,您應該重新計算listX。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.