Форум сайта python.su
Преамбула: хочу реализовать пагинацию данных с помощью ajax, чтобы выводить много данных в графике.
Суть:
Есть модель
date = models.DateTimeField(blank=True, auto_now_add=True)
<QuerySet [{'some': 123, 'date': datetime.datetime(2018, 5, 29, 1, 21, 35, 861400, tzinfo=<UTC>)
def myconverter(o): if isinstance(o, datetime.datetime): return o.__str__() obj_all = Some.objects.values()[0:3] json.dumps(obj_all, default=myconverter)
# TIME_ZONE = 'UTC' TIME_ZONE = 'Europe/Moscow' USE_I18N = True USE_L10N = True USE_TZ = True DATETIME_FORMAT = "U" DATETIME_INPUT_FORMATS = ("%s",)
class UCDateTimeField(DateTimeField): def pre_save(self, model_instance, add): if self.auto_now or (self.auto_now_add and add): value = datetime.datetime.now() setattr(model_instance, self.attname, value) return value else: value = getattr(model_instance, self.attname) if not isinstance(value, datetime): # assume that the value is a timestamp if it is not a datetime value = datetime.fromtimestamp(int(value)) # an exception might be better than an assumption setattr(model_instance, self.attname, value) return super(UCDateTimeField, self).pre_save(model_instance, add)
date = UCDateTimeField(blank=True, auto_now_add=True)
Отредактировано JOHN_16 (Май 29, 2018 09:32:03)
Офлайн
Вот это не имеет поддержки django 2.0+ https://github.com/myyang/django-unixtimestampfield
Офлайн