2013-07-09 88 views
0

我正在用Scala使用播放2.0.4的應用程序,和我被要求實現的功能之一是要建立記住所有的編輯歷史的一種形式。基本上,每個字段旁邊都應該有一個按鈕,顯示每個更改的詳細信息,因爲應用程序用戶可能想要稍後回滾或使用編輯歷史記錄信息。玩框架形式的歷史

在我腦海中彈出的第一個想法是爲每個字段分配一個隱藏div,每個字段附加每一個變化,只有當用戶點擊相應的按鈕時才顯示div。這聽起來並不困難,但我覺得它可能會使HTML變得混亂(因爲每個用戶都有自己的記錄,每個記錄都有很多字段)。或者我可以製作數據庫的副本並存儲所有更改,主鍵更改爲表單的ID和編輯時間。

想法?我是否在解決問題?有沒有更優雅的方式來存儲所有的編輯歷史?我們估計,將只有在使用它的公司200人左右,所以我想我可以讓效率下滑一點點... ...提前

感謝。

回答

1

我會正常化和堅持記錄在數據庫中。這將允許您通過爲每個節回滾歷史記錄表來獲得更改歷史記錄。

這將允許基於數據集的可恢復性的可管理性,並且可以跟蹤重大更改。單獨管理每個領域將是非常繁瑣和最不務實的。

+0

謝謝!我沒有做太多與數據庫之前,所以我目前使用Google如何規範和持續的記錄。你會碰巧與我可以遵循的一些例子有關聯嗎? – kqdtran

+0

[ANORM](http://www.playframework.com/documentation/2.0.1/ScalaAnorm)是一個良好的開端。一個簡單的sqlite數據庫對於一個小型Web應用程序來說就足夠了。 – korefn