Skip to content

Commit 090acab

Browse files
committed
Improvements for decoding params for recording
1 parent 21d162c commit 090acab

File tree

1 file changed

+7
-5
lines changed
  • debug_toolbar/utils/tracking

1 file changed

+7
-5
lines changed

debug_toolbar/utils/tracking/db.py

+7-5
Original file line numberDiff line numberDiff line change
@@ -91,8 +91,12 @@ def _quote_params(self, params):
9191
for key, value in params.iteritems())
9292
return map(self._quote_expr, params)
9393

94+
def _decode(self, param):
95+
if isinstance(param, unicode):
96+
return param.decode('utf-8', 'ignore')
97+
return param
98+
9499
def execute(self, sql, params=()):
95-
__traceback_hide__ = True
96100
start = datetime.now()
97101
try:
98102
return self.cursor.execute(sql, params)
@@ -107,10 +111,8 @@ def execute(self, sql, params=()):
107111
stacktrace = []
108112
_params = ''
109113
try:
110-
_params = json.dumps(
111-
[force_unicode(x, strings_only=True) for x in params]
112-
)
113-
except TypeError:
114+
_params = json.dumps(map(self._decode, params))
115+
except Exception:
114116
pass # object not JSON serializable
115117

116118
template_info = None

0 commit comments

Comments
 (0)