У меня есть объект домена, на котором я хочу сохранить несколько вещей, которые существуют только во время выполнения. Я посмотрел на документацию и нашел ключевое слово transients
, которое, на первый взгляд, было тем, что я искал. Вот как выглядит мой доменный объект ...
class Contact {
def Seeker
def beforeInsert()
{
initiatedDate = new Date()
}
Date initiatedDate
Date acceptedDate
static transients = ['pal']
Seeker pal
}
где Seeker
- класс Groovy, который не является объектом домена, но является заполнителем для некоторых свойств.
Пока все в порядке, и в моей таблице контактов нет поля pal
, как ожидалось. В моем ContactController
я запрашиваю группу контактов c
, затем просматриваю их Seeker
приятелей (подробности того, как их удерживают) и устанавливаю в поле pal
новый объект.
c.pal = new Seeker();
c.pal.name = otherObject.name
render c as JSON
Кажется, что все работает нормально, за исключением того, что в возвращаемом JSON отсутствует объект pal.
Это допустимое использование переходных процессов? Документы упоминают, что они удобны для основанных на функциях геттеров и сеттеров, но в моем случае я хочу фактический объект. Должен ли я писать методы getPal () и setPal () для моего объекта?
Спасибо