Como inicializo um campo Data em um objeto de domínio Grails para atuar como um carimbo de data/hora?

StackOverflow https://stackoverflow.com/questions/2147216

  •  23-09-2019
  •  | 
  •  

Pergunta

Eu tenho uma classe de domínio que contém duas datas e quero que uma delas seja preenchida com a hora atual em que um registro é criado para o objeto, como um carimbo de data/hora de criação...

class Contact {
    Date initiatedDate
    Date acceptedDate
}

É suficiente apenas um novo Date objeto em um deles e tornar o outro anulável até o momento em que eu precise preenchê-lo, mais ou menos assim ...

class Contact {

    static constraints = 
    {
        acceptedDate(nullable:true)
    }

    Date initiatedDate = new Date()
    Date acceptedDate
}

Estou experimentando, mas gostaria de saber se esta é a maneira correta de fazer isso ou se há algo mais Grailsy ou GORMy que eu deveria fazer, digamos, em um init função ou ajustando a definição do objeto de domínio para ter uma por padrão, como acontece com um id e version.

Obrigado

Foi útil?

Solução

O que você escreveu deve funcionar, mas você pode usar o GORM carimbo de data/hora automático recurso simplesmente adicionando um campo:

class Contact {
    Date dateCreated
}

Se você quiser manter seus próprios nomes para os campos, o mesmos documentos grails também mostra como usar eventos GORM para definir campos ao salvar ou atualizar.

HTH

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top