2013-02-27 73 views

回答

1

刚刚发现它,这一个工程:

def names = grailsApplication.getDomainClass('com.foo.Person').persistentProperties.collect { it.name } 
5

你可以试试这个让领域类的字段名。

YourClass.declaredFields.each { 
    if (!it.synthetic) { 
    println it.name 
    } 
} 
0

您可以使用gormPersistentEntity任何域对象,这个工程使用Grails 2.4.4至少:

def names = Person.gormPersistentEntity.persistentPropertyNames 
//returns ['firstName', 'lastName'...] 

你也可以使用GrailsNameUtils像这样得到自然的名字:

def naturalNames = Person.gormPersistentEntity.persistentPropertyNames.collect { 
     grails.util.GrailsNameUtils.getNaturalName(it) 
} 
//returns ['First Name', 'Last Name'...] 

def capitilizedNames = Person.gormPersistentEntity.persistentProperties.collect{ 
    it.capitilizedName 
} 
//returns ['FirstName', 'LastName'...]