【问题标题】:Grails Scaffold Save Fails SilentlyGrails Scaffold Save 静默失败
【发布时间】:2017-06-12 10:09:09
【问题描述】:

我正在处理一个新的小型原型项目,并尝试使用脚手架功能加载数据。我完成了保存过程,它说它已经保存在 UI 上,但后来我重新访问,对象列表仍然为 0。我添加了

loggingSql: true

进入我的 .yml 但我没有看到任何 sql 语句。

class RiUser {

    String firstName
    String lastName

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

    }
}


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

Adding RiUser

UI shows no RiUsers After Save

任何帮助将不胜感激!

【问题讨论】:

    标签: grails grails-orm


    【解决方案1】:

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

    import grails.transaction.Transactional
    @Transactional
    class RiUserController { 
        static scaffold = RiUser
        def index() { }
    }
    

    注意:如果您刚刚开始使用 Grails,这是一种“好的”方法,但在实际应用程序中,您需要避免使用脚手架并自己实现控制器方法。您可以使用grails generate-controller <entity> 快速开始默认的脚手架实现。

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

    http://docs.grails.org/latest/guide/services.html#declarativeTransactions

    【讨论】:

    • 抱歉回复延迟,谢谢。但是仍然没有保存它......你知道有什么方法可以深入了解并找到错误消息吗?
    猜你喜欢
    • 2017-05-13
    • 2013-01-27
    • 1970-01-01
    • 2017-01-10
    • 2018-09-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多