2014-01-08 166 views
2

嗨我只是尝试了Grails,并试图了解更多关于领域类。我有两个简单的领域类:查看另一个领域类中的grails领域类属性

域1级

package grailtest 

class Person { 

    String firstName 
    String lastName 
    int age 
    String email 

    static constraints = { 
    } 

} 

域类2

package grailtest 

class Customer { 

    String customerId 
    Person personInCharge 

    static constraints = { 
    } 

} 

当我做一个运行的应用程序,我只能看到

grailtest.Person:1

作为人。我如何将它默认为一个特定的值,例如firstName + lastName,以使应用程序更友好?

回答

2

在域中覆盖toString方法到你想显示的内容。重新启动应用程序

+0

谢谢!这完美的作品!干杯! –

1

查找视图在此它显示grailstest.Person:1,并更新到:

${personInstance.firstName} ${personInstance.lastName} 

默认情况下,这个观点应该是“的意见/人”

+0

谢谢!也会试试这个!干杯! –

2

您可以使用@ToString以防万一您需要详细记录或打印标准输出。

import groovy.transform.ToString 

@ToString(includeNames=true, includeFields=true) 
class Person { 
    String firstName 
    String lastName 
    int age 
    String email 
} 

例如,

def person = new Person(firstName: 'Test', lastName: 'hola', 
          age: 10, email: '[email protected]') 

会给

Person(firstName:Test, lastName:hola, age:10, email:[email protected]) 
1

你把这个代码视图.gsp

${personInstance?.firstname} ${personInstance?.lastname}