当我在grails中编写.save()时,它会在db表中插入一个新行。但是,不会在对象中保留数据。 我尝试过.save(flush:true),但没有运气。 请帮忙。
谢谢
答案 0 :(得分:1)
尝试save(failOnError:true)
或在Groovy-truth中检查save()
的返回值 - 成功/失败。
您还可以将logSql: true
添加到application.yml数据源和
logger 'org.hibernate.type.descriptor.sql.BasicBinder', TRACE, ['STDOUT']
logger 'org.hibernate.SQL', TRACE, ['STDOUT']
到你的logback.groovy
答案 1 :(得分:1)
您要保存的对象可能未经过验证。表示与域类中描述的最小约束不匹配。
调试代码并运行经过验证的方法,然后查看errors属性。
object.validate()
object.errors
看一看 https://docs.grails.org/latest/ref/Constraints/Usage.html
请记住,约束闭包上的所有未声明的属性在默认情况下都是强制保存对象的