Fecha de creación y edición automáticas en Django

En Django la fecha de creación y modificación no se añade por defecto a nuestros modelos, como sí ocurre en otros frameworks como Ruby On Rails. La forma más elegante de añadir esta funcionalidad a tus modelos es crear una clase base que herede de models.Model y luego hacer que todos tus modelos hereden de la misma.

[code language=»python»]
class BaseModel(models.Model):
created_date = models.DateTimeField(_(‘Date created’), auto_now_add=True)
modified_date = models.DateTimeField(_(‘Date modified’), auto_now=True)

class Meta:
abstract = True
[/code]

El resto de nuestros modelos donde queramos tener las fechas de creación y actualización automáticas deberán ser del tipo:

[code language=»python»]
class AccountType(BaseModel):
name = models.CharField(_(‘Name of this account type ie: Free’), blank=False, max_length=254)
description = models.TextField(_(‘Explain the user what he can and can not do with this account’), blank=True, max_length=512)
[/code]

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.