2012-03-12 41 views
0

我需要使用Grails將數據更改從表「documents」記錄到另一個表「documents_log」中。 有沒有簡單的方法來做到這一點?Grails:記錄域數據更改

我讀了審計記錄,但文件很差,它登錄在同一張表中,對吧?

有什麼建議嗎?

+0

審計日誌記錄不會登錄在同一個表中。它登錄在一個'audit_log'表中 – 2012-03-12 17:45:37

回答

1

審計日誌記錄插件將對可審計域類的所有更改記錄到名爲AUDIT_LOG的表中。如果您的DOCUMENTS域是唯一可審計的域,那麼它是唯一一個會記錄可審計事件的域。

加入這個「審計」設置安裝插件(grails install-plugin audit-logging)可以使域類審計後:

class Documents { 
    static auditable = true 
    Long id 
... 

據此,通過配置來改變審計表名稱的能力還沒有到位: http://jira.grails.org/browse/GPAUDITLOGGING-30

如果您堅持在名爲DOCUMENTS_LOG的表中記錄對DOCUMENTS域的更改,則可以在數據庫中創建一個同義詞來實現此目的。或者,如果您只需要DOCUMENTS_LOG以便讀取,請針對AUDIT_LOG創建一個DOCUMENTS_LOG視圖。

除此之外,我不確定你的意思是「...它登錄在同一張表中。」

+0

他似乎認爲Audit Logging插件會將日誌放入Documents表中,但正如你所指出的那樣,這是不正確的。 – 2012-03-12 17:47:38