嗨,我仍然对Grails很新,我也无法弄清楚为什么会这样。
我有一个域类:
package scheduler
class Client {
String name
static constraints = {}
}
还有一个控制器:
package scheduler
class AdminController {
def create() {
def client = new Client(name:"John")
println client
}
}
目前我总是为客户端获取null。最初上面在域级方面稍微复杂一些,但我系统地将它愚蠢地看下去是否存在问题。我仍然无法完成上述工作。
输出始终是 scheduler.Client:null
如果我需要提供更多信息,请告诉我。
答案 0 :(得分:4)
它不是null,这只是Grails添加的toString
方法的默认输出。它打印类名和id。由于您尚未保存实例,因此id为null。如果实例为null,则输出为null
,而不是scheduler.Client : null
如果要查看实例中的数据,请使用Groovy dump()
方法,例如
def client = new Client(name:"John")
println client.dump()
您还可以添加包含toString
属性的name
方法,例如
package scheduler
class Client {
String name
String toString() { name }
}