From 8945dd75aa70350454f99dfffb97abd6f42e1a88 Mon Sep 17 00:00:00 2001 From: Lance Edgar Date: Tue, 15 Jan 2019 15:49:54 -0600 Subject: [PATCH] Convert all datetime values to localtime, for "download rows as CSV" this probably will need to be more flexible at some point; this works for now --- tailbone/views/master.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/tailbone/views/master.py b/tailbone/views/master.py index 50394468..aec92acb 100644 --- a/tailbone/views/master.py +++ b/tailbone/views/master.py @@ -2,7 +2,7 @@ ################################################################################ # # Rattail -- Retail Software Framework -# Copyright © 2010-2018 Lance Edgar +# Copyright © 2010-2019 Lance Edgar # # This file is part of Rattail. # @@ -27,6 +27,7 @@ Model Master View from __future__ import unicode_literals, absolute_import import os +import datetime import tempfile import logging @@ -2345,6 +2346,9 @@ class MasterView(View): csvrow = {} for field in fields: value = getattr(obj, field, None) + if isinstance(value, datetime.datetime): + # TODO: this assumes value is *always* naive UTC + value = localtime(self.rattail_config, value, from_utc=True) csvrow[field] = '' if value is None else six.text_type(value) return csvrow @@ -2355,6 +2359,9 @@ class MasterView(View): csvrow = {} for field in fields: value = getattr(row, field, None) + if isinstance(value, datetime.datetime): + # TODO: this assumes value is *always* naive UTC + value = localtime(self.rattail_config, value, from_utc=True) csvrow[field] = '' if value is None else six.text_type(value) return csvrow