diff options
| author | Rob Hudson | 2008-09-23 21:06:39 -0700 | 
|---|---|---|
| committer | Rob Hudson | 2008-09-23 21:06:39 -0700 | 
| commit | 159e690ff3d07c8821332942ae722bdf0bdf5208 (patch) | |
| tree | e0c2284be0ae9fb840abdae142db18bb03ce849b /debug_toolbar/panels/sql.py | |
| parent | 7ea7e780b775680be3050a8d6eb71f63b5a1fd34 (diff) | |
| download | django-debug-toolbar-159e690ff3d07c8821332942ae722bdf0bdf5208.tar.bz2 | |
Add catch for non JSON serializable objects and don't show the EXPLAIN link for
these.
Diffstat (limited to 'debug_toolbar/panels/sql.py')
| -rw-r--r-- | debug_toolbar/panels/sql.py | 7 | 
1 files changed, 6 insertions, 1 deletions
| diff --git a/debug_toolbar/panels/sql.py b/debug_toolbar/panels/sql.py index e4e3c02..9223cb7 100644 --- a/debug_toolbar/panels/sql.py +++ b/debug_toolbar/panels/sql.py @@ -16,12 +16,17 @@ class DatabaseStatTracker(util.CursorDebugWrapper):              return self.cursor.execute(sql, params)          finally:              stop = time.time() +            _params = None +            try: +                _params = simplejson.dumps(params) +            except TypeError: +                pass # object not JSON serializable              # We keep `sql` to maintain backwards compatibility              self.db.queries.append({                  'sql': self.db.ops.last_executed_query(self.cursor, sql, params),                  'time': stop - start,                  'raw_sql': sql, -                'params': simplejson.dumps(params), +                'params': _params              })  util.CursorDebugWrapper = DatabaseStatTracker | 
