File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 11import tablib
2-
2+ import re
33from django .contrib import admin
44from django .http import HttpResponse
55from django .urls import path
@@ -103,12 +103,15 @@ def get_export_file(self, partner_program: PartnerProgram):
103103 ]
104104
105105 json_data = profile .partner_program_data
106+ ILLEGAL_CHARACTERS_RE = re .compile (r"[\000-\010]|[\013-\014]|[\016-\037]" )
107+
106108 for key in json_schema :
107- row .append (
108- json_data .get (
109- key , ""
110- ) # .encode("ascii", errors="ignore").decode(), "")
111- )
109+ value = json_data .get (key , "" ) # Получаем значение из json_data
110+ cleaned_value = ILLEGAL_CHARACTERS_RE .sub (
111+ "" , value
112+ ) # Удаляем недопустимые символы из значения
113+ row .append (cleaned_value ) # Добавляем очищенное значение в row
114+
112115 response_data .append (row )
113116
114117 binary_data = response_data .export ("xlsx" )
@@ -144,4 +147,4 @@ class PartnerProgramUserProfileAdmin(admin.ModelAdmin):
144147 "partner_program" ,
145148 )
146149 search_fields = ("user__first_name" , "user__last_name" , "partner_program_data" )
147- date_hierarchy = "datetime_created"
150+ date_hierarchy = "datetime_created"
You can’t perform that action at this time.
0 commit comments