Как инициализировать поле Date в доменном объекте Grails для использования в качестве метки времени? - PullRequest
5 голосов
/ 27 января 2010

У меня есть класс домена, в котором есть две даты, и я хочу, чтобы одна из них была заполнена текущим временем, когда для объекта создается запись, например отметка времени создания ...

class Contact {
    Date initiatedDate
    Date acceptedDate
}

Достаточно ли просто нового Date объекта на одном из них и сделать другой обнуляемым до тех пор, пока мне не понадобится заполнить его, вроде как ...

class Contact {

    static constraints = 
    {
        acceptedDate(nullable:true)
    }

    Date initiatedDate = new Date()
    Date acceptedDate
}

Я экспериментирую, но мне хотелось бы знать, является ли это правильным способом или есть что-то более Grailsy или GORMy, которые я должен сделать, скажем, в функции init или путем настройки домена определение объекта, чтобы иметь один по умолчанию, как это делает id и version.

Спасибо

1 Ответ

9 голосов
/ 27 января 2010

То, что вы написали, должно работать, но вы можете использовать функцию GORM с автоматической отметкой времени , просто добавив поле:

class Contact {
    Date dateCreated
}

Если вы хотите сохранить свои собственные имена для полей, тот же документ Grails также покажет, как использовать события GORM для установки полей при сохранении или обновлении.

НТН

...