我使用Grails 2.4.2和我的控制器更新方法有以下代码:的Grails:数据保存,即使我设置错误
@Transactional
def update(ErtIncommingInvoice ertIncommingInvoiceInstance) {
if (ertIncommingInvoiceInstance == null) {
notFound()
return
}
// Concurrent-Update Test
if (ertIncommingInvoiceInstance.version != params.version as int) {
flash.warning = "Another user changed the record! (Concurrent Update Error)"
ertIncommingInvoiceInstance.errors.rejectValue("ertInfo", "concurrent.update.error")
respond ertIncommingInvoiceInstance.errors, view:'edit'
return
}
即使在的情况下,检测到错误,并错误对象被设置并且方法流程不执行
ertIncommingInvoiceInstance.save flush:true, failOnError: true
数据已经在数据库中改变了。 显示编辑视图,但不显示错误,仅显示闪光消息。
我在推理中的错误在哪里?