我只是在处理一个新的小原型项目,并尝试使用脚手架功能加载数据。 我经历了保存过程,它说它已经保存在 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() { }
}
添加 RiUser
保存后 UI 未显示 RiUsers
任何帮助将不胜感激!
尝试将@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