0
Grails中,如果我做的:Grails的failOnError是否強制刷新?
domainObj.save(failOnError: true)
將隱式沖水Hibernate的緩衝,以及,彷彿「刷新:真正的」添加到ARGS?如果您可以請爲您的答案提供可信的來源,謝謝。
Grails中,如果我做的:Grails的failOnError是否強制刷新?
domainObj.save(failOnError: true)
將隱式沖水Hibernate的緩衝,以及,彷彿「刷新:真正的」添加到ARGS?如果您可以請爲您的答案提供可信的來源,謝謝。
根據AbstractSavePersistentMethod代碼中的驗證保存/沖洗之前發生,因此,如果它失敗並且failOnError爲真,ValidationException將被拋出並沒有沖水將發生。
if (errors.hasErrors()) {
handleValidationError(domainClass,target,errors);
boolean shouldFail = shouldFail(application, domainClass);
if (argsMap != null && argsMap.containsKey(ARGUMENT_FAIL_ON_ERROR)) {
shouldFail = GrailsClassUtils.getBooleanFromMap(ARGUMENT_FAIL_ON_ERROR, argsMap);
}
if (shouldFail) {
throw new ValidationException("Validation Error(s) occurred during save()", errors);
}
return null;
}
...
return performSave(target, shouldFlush); //here flush can happen
非常好。結束了一天,謝謝你的免費答覆。 ;-) –
沒有更好的可靠的消息來源比源代碼:-) –
的保存方法通知實例應該被保存或更新的持久化上下文。除非使用flush參數,否則該對象將不會立即保留: 請參閱:http://grails.org/doc/2.3.x/ref/Domain%20Classes/save.html –