我们有*(其中*是某个字段吗?)
另一个问题是:
def beforeUpdate= { log.info("in beforeUpdate“+this.status) } def afterUpdate ={ log.info("in afterUpdate“+this.status) }
这两者的地位是一样的。尽管对象的实际状态(此)从x更新为y
发布于 2012-03-09 15:37:00
没有更改属性的事件,但是可以添加一个显式的setter来执行以下操作:
class MyDomainClass {
String status
void setStatus(String status) {
this.status = status
// do something based on changed value
}
}在beforeUpdate和afterUpdate中可以看到相同的值,因为这些回调是在Hibernate将更改的值保存到数据库时使用的。在Hibernate启动和完成更新之间更改值是不寻常的。
如果要从数据库中查找原始值,则可以使用http://grails.org/doc/latest/ref/Domain%20Classes/getPersistentValue.html获得
发布于 2012-03-09 12:54:35
您可能想看看grails审计插件:审计测井和审计轨迹
https://stackoverflow.com/questions/9633932
复制相似问题