From be669f7f0560fbc6739e2d7e959d7113e551011f Mon Sep 17 00:00:00 2001 From: jiangweidong Date: Wed, 8 Mar 2023 11:21:15 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=93=8D=E4=BD=9C=E6=97=A5=E5=BF=97?= =?UTF-8?q?=E6=98=BE=E7=A4=BA=E7=94=A8=E6=88=B7=E5=8A=A0=E5=AF=86=E5=90=8E?= =?UTF-8?q?=E7=9A=84=E5=AF=86=E6=96=87=EF=BC=8C=E5=8F=8A=E6=97=A5=E6=9C=9F?= =?UTF-8?q?=E6=A0=BC=E5=BC=8F=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/audits/handler.py | 1 - apps/audits/utils.py | 6 +++++- apps/common/local.py | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/apps/audits/handler.py b/apps/audits/handler.py index d5f39dc7a..27b116488 100644 --- a/apps/audits/handler.py +++ b/apps/audits/handler.py @@ -4,7 +4,6 @@ from django.db import transaction from django.core.cache import cache from django.utils.translation import ugettext_lazy as _ -from users.models import User from common.utils import get_request_ip, get_logger from common.utils.timezone import as_current_tz from common.utils.encode import Singleton diff --git a/apps/audits/utils.py b/apps/audits/utils.py index d069a6d26..27cdd6e28 100644 --- a/apps/audits/utils.py +++ b/apps/audits/utils.py @@ -1,13 +1,15 @@ import codecs import copy import csv + from itertools import chain +from datetime import datetime from django.db import models from django.http import HttpResponse +from common.utils.timezone import as_current_tz from common.utils import validate_ip, get_ip_city, get_logger -from settings.serializers import SettingsSerializer from .const import DEFAULT_CITY logger = get_logger(__name__) @@ -70,6 +72,8 @@ def _get_instance_field_value( f.verbose_name = 'id' elif isinstance(value, (list, dict)): value = copy.deepcopy(value) + elif isinstance(value, datetime): + value = as_current_tz(value).strftime('%Y-%m-%d %H:%M:%S') elif isinstance(f, models.OneToOneField) and isinstance(value, models.Model): nested_data = _get_instance_field_value( value, include_model_fields, model_need_continue_fields, ('id',) diff --git a/apps/common/local.py b/apps/common/local.py index 947ae3d6b..19b00537e 100644 --- a/apps/common/local.py +++ b/apps/common/local.py @@ -1,7 +1,7 @@ from werkzeug.local import Local thread_local = Local() -encrypted_field_set = set() +encrypted_field_set = {'password'} def _find(attr):