【发布时间】:2016-06-24 14:59:53
【问题描述】:
我有一个有很多学生的领域类教师。
当我使用时
Teacher.students.each{it->
it.lastupdated=date;
}
学生的属性会自动(并且似乎是立即)持久化到数据库中。
有没有办法防止这种行为并使值在我明确保存之前是暂时的?
【问题讨论】:
标签: hibernate grails grails-orm
我有一个有很多学生的领域类教师。
当我使用时
Teacher.students.each{it->
it.lastupdated=date;
}
学生的属性会自动(并且似乎是立即)持久化到数据库中。
有没有办法防止这种行为并使值在我明确保存之前是暂时的?
【问题讨论】:
标签: hibernate grails grails-orm
只需使用it.discard() 即可避免自动保存。检查 Grails 文档here。
另一种可能不适用于您的 Grails 版本的解决方案是将其添加到您的配置文件中:
hibernate {
flush.mode='manual'
}
【讨论】:
discard() 仅删除自动保存。如果您手动调用save(),那么您的修改将被应用。