Как изменить формат ввода времени в административном интерфейсе? - Python
Формулировка задачи:
Здравствуйте.
Я совсем только начал осваивать django и у меня возник вопрос.
Предположим есть модель которая описывает новость.
сtime - это время создания новости. должно оно храниться в unixtime и проставляться автоматически при создании новости.
mtime - время модификации (последней). тоже в unixtime. и тоже автоматом должно проставляться при изменении новости.
ptime - это время публикации новости. хранится оно в unixtime. но живому человеку не удобно ставить даты в unixtime в административном интерфейсе.
Собственно вопрос, как изменить поведение?
Читал про создание своих моделей, но не уверен что именно так надо делать.
Как вообще такие вещи принято реализовывать?
Спасибо.
О! пришла в голову мысль. Коли уж это всего лиш питонический класс то я могу по сути просто взять и переопределить save.
Но не уверен что это бестпрактик.
Решение задачи: «Как изменить формат ввода времени в административном интерфейсе?»
textual
Листинг программы
from django.db import models from lib.db import mymodels class News(models.Model): url = models.SlugField(max_length=255, unique=True) title = models.CharField(max_length=255) lead = models.CharField(max_length=255) text = models.TextField() ptime = mymodels.UnixTimeField() ctime = mymodels.UnixTimeField(editable=False,auto_now_add=True) mtime = mymodels.UnixTimeField(editable=False,auto_now=True) version = models.IntegerField(default=1, editable=False) status = models.BooleanField() def __unicode__(self): return '%s %s' % (self.title, self.lead) def save(self, *args, **kwargs): if self.id: self.version += 1 return super(News, self).save(*args, **kwargs)
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д