Добавление метода в класс домена - PullRequest
9 голосов
/ 11 октября 2008

У меня есть класс домена, содержащий пару полей. Я могу получить к ним доступ из моего .gsps. Я хочу добавить метод в класс домена, который я могу вызвать из .gsps (этот метод является своего рода виртуальным полем; его данные не поступают напрямую из базы данных).

Как добавить метод и как я могу затем вызвать его из .gsps?

Ответы [ 3 ]

12 голосов
/ 11 октября 2008

Чтобы добавить метод, просто запишите его, как любой другой обычный метод. Он будет доступен для объекта при его отображении в вашем GSP.

def someMethod() {
  return "Hello."
}

Тогда в вашем GSP.

${myObject.someMethod()}
6 голосов
/ 14 октября 2008

Если вы хотите, чтобы ваш метод больше походил на свойство, то сделайте ваш метод методом получения. Метод с именем getFullName () может быть доступен как свойство как $ {person.fullName}. Обратите внимание на отсутствие скобок.

4 голосов
/ 30 августа 2013

Рассмотрим класс, как показано ниже

класс Работа {

String jobTitle
String jobType
String jobLocation
String state



static constraints = {

    jobTitle nullable : false,size: 0..200
    jobType nullable : false,size: 0..200
    jobLocation nullable : false,size: 0..200
    state nullable : false


}



def jsonMap () {
    [
         'jobTitle':"some job title",
         'jobType':"some jobType",
         'jobLocation':"some location",
         'state':"some state"
    ]
    }

}

Вы можете использовать этот jsonMap где угодно. В gsp тоже вроде $ {jobObject.jsonMap ()}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...