mirror of https://github.com/jumpserver/jumpserver
Merge pull request #9874 from jumpserver/pr@dev@fix_operatelog_hide_sth
fix: 操作日志显示用户加密后的密文,及日期格式调整pull/9883/head
commit
1cbfd48e11
|
@ -4,7 +4,6 @@ from django.db import transaction
|
||||||
from django.core.cache import cache
|
from django.core.cache import cache
|
||||||
from django.utils.translation import ugettext_lazy as _
|
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 import get_request_ip, get_logger
|
||||||
from common.utils.timezone import as_current_tz
|
from common.utils.timezone import as_current_tz
|
||||||
from common.utils.encode import Singleton
|
from common.utils.encode import Singleton
|
||||||
|
|
|
@ -1,13 +1,15 @@
|
||||||
import codecs
|
import codecs
|
||||||
import copy
|
import copy
|
||||||
import csv
|
import csv
|
||||||
|
|
||||||
from itertools import chain
|
from itertools import chain
|
||||||
|
from datetime import datetime
|
||||||
|
|
||||||
from django.db import models
|
from django.db import models
|
||||||
from django.http import HttpResponse
|
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 common.utils import validate_ip, get_ip_city, get_logger
|
||||||
from settings.serializers import SettingsSerializer
|
|
||||||
from .const import DEFAULT_CITY
|
from .const import DEFAULT_CITY
|
||||||
|
|
||||||
logger = get_logger(__name__)
|
logger = get_logger(__name__)
|
||||||
|
@ -70,6 +72,8 @@ def _get_instance_field_value(
|
||||||
f.verbose_name = 'id'
|
f.verbose_name = 'id'
|
||||||
elif isinstance(value, (list, dict)):
|
elif isinstance(value, (list, dict)):
|
||||||
value = copy.deepcopy(value)
|
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):
|
elif isinstance(f, models.OneToOneField) and isinstance(value, models.Model):
|
||||||
nested_data = _get_instance_field_value(
|
nested_data = _get_instance_field_value(
|
||||||
value, include_model_fields, model_need_continue_fields, ('id',)
|
value, include_model_fields, model_need_continue_fields, ('id',)
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
from werkzeug.local import Local
|
from werkzeug.local import Local
|
||||||
|
|
||||||
thread_local = Local()
|
thread_local = Local()
|
||||||
encrypted_field_set = set()
|
encrypted_field_set = {'password'}
|
||||||
|
|
||||||
|
|
||||||
def _find(attr):
|
def _find(attr):
|
||||||
|
|
Loading…
Reference in New Issue