2012-03-12 42 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