Grails,GORM,update方法在调用save()之前持久化对象

时间:2015-05-21 14:21:56

标签: hibernate grails gorm

我有一个域类<div onclick="document.getElementById ('review').style.display=document.getElementById ('review').style.display='none' ? 'block':'none';"> <p>Click here to read our review</p> <div id="review" style="display: none;">Review text goes here.</div> 和一个生成的Controller。在更新功能中,我正在调用DailyBooking。在那里,我想从DailyBooking(从数据库)获取当前持久化的条目:

userService.computeFlexTime(dailyBookingInstance)

根据我的理解,我应该从数据库中获取当前持久化的条目,因为我在更新函数中的save语句之前调用了服务。但是当我实际调试时,currentEntry具有来自更新对象的值。此外,新值已经写入数据库而不调用save。

更新方法:

DailyBooking currentEntry = DailyBooking.findByUserAndDate(dailyBookingInstance.user, dailyBookingInstance.date)

另一个问题是为什么这个方法对我的Controller中的dailyBookingInstance有影响,因为它没有返回?我认为在Java中我必须使用if(dailyBookingInstance.end != null){ userService.computeFlexTime(dailyBookingInstance) } dailyBookingInstance.save flush:true 或smth。那样的。

1 个答案:

答案 0 :(得分:3)