GrailsScaffold保存以静默方式失败

GrailsScaffold保存以静默方式失败,grails,gorm,Grails,Gorm,我正在处理一个新的小型原型项目,并尝试使用scaffold特性加载数据。我经历了保存过程,它说它在之后保存在UI上,但我再次访问,对象列表仍然为0。我补充说 loggingSql: true 但是我没有看到sql语句 class RiUser { String firstName String lastName static hasMany = [riCases: RiCase] static constraints = { } } class

我正在处理一个新的小型原型项目,并尝试使用scaffold特性加载数据。我经历了保存过程,它说它在之后保存在UI上,但我再次访问,对象列表仍然为0。我补充说

loggingSql: true
但是我没有看到sql语句

class RiUser {

    String firstName
    String lastName

    static hasMany = [riCases: RiCase]
    static constraints = {

    }
}


class RiUserController {
    static scaffold = RiUser
    def index() { }
}


任何帮助都将不胜感激

尝试将@Transactional注释添加到控制器

import grails.transaction.Transactional
@Transactional
class RiUserController { 
    static scaffold = RiUser
    def index() { }
}
注意:如果您刚刚开始使用Grails,那么这是一种“确定”的方法,但是在实际应用程序中,您希望避免脚手架,并自己实现控制器方法。您可以使用
grailsgeneratecontroller
来启动默认的框架式实现

控制器方法应该委托给服务层,服务层将处理任何与持久性相关的活动。默认情况下,服务层方法将封装在事务中,因此您不必担心对这些方法进行注释,除非您希望控制传播级别和/或这些方法是否为只读,您可以在文档中了解更多有关内容


尝试将@Transactional注释添加到控制器

import grails.transaction.Transactional
@Transactional
class RiUserController { 
    static scaffold = RiUser
    def index() { }
}
注意:如果您刚刚开始使用Grails,那么这是一种“确定”的方法,但是在实际应用程序中,您希望避免脚手架,并自己实现控制器方法。您可以使用
grailsgeneratecontroller
来启动默认的框架式实现

控制器方法应该委托给服务层,服务层将处理任何与持久性相关的活动。默认情况下,服务层方法将封装在事务中,因此您不必担心对这些方法进行注释,除非您希望控制传播级别和/或这些方法是否为只读,您可以在文档中了解更多有关内容


很抱歉延迟回复,谢谢。但是仍然没有保存它…你知道有什么方法可以向下搜索并找到错误消息吗?很抱歉延迟响应,谢谢。但仍然没有保存它……你知道有什么方法可以深入查看并找到错误消息吗?