¿Cómo puedo inicializar un campo de fecha en un objeto de dominio Grails para actuar como una marca de tiempo?

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

  •  23-09-2019
  •  | 
  •  

Pregunta

Tengo una clase de dominio que tiene dos fechas en ella y yo quiero uno de ellos poblada de la hora actual cuando se crea un registro para el objeto, como una marca de tiempo crear ...

class Contact {
    Date initiatedDate
    Date acceptedDate
}

¿Es suficiente sólo para un nuevo objeto Date en uno de ellos y hacer que el otro anulable hasta el momento, ya que necesito para llenarlo, algo así como esto ...

class Contact {

    static constraints = 
    {
        acceptedDate(nullable:true)
    }

    Date initiatedDate = new Date()
    Date acceptedDate
}

Estoy experimentando, pero me gustaría saber si esta es la forma correcta de hacerlo o si hay algo más Grailsy o GORMy que deben hacer en, por ejemplo, una función init o mediante la deformación de la definición del objeto de dominio tener uno por defecto, como lo hace un id y version.

Gracias

¿Fue útil?

Solución

Lo que usted ha escrito debería funcionar, pero se puede utilizar el GORM auto-sellado de tiempo característica por simple adición de un campo:

class Contact {
    Date dateCreated
}

Si desea mantener sus propios nombres para los campos de la griales mismos documentos también muestran cómo utilizar los eventos GORM a campos de conjunto en guardar o actualizar.

HTH

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top