aboutsummaryrefslogtreecommitdiffstats
path: root/debug_toolbar/panels
diff options
context:
space:
mode:
authorRob Hudson2008-09-18 13:44:15 -0700
committerRob Hudson2008-09-18 13:44:15 -0700
commit41a7cdbc553d3180f0e355a850bda61f0500d7c1 (patch)
treecd6e669785619e8e34be897626901f2dbbd988f5 /debug_toolbar/panels
parente40b2c0fbdbd932be5f9d0550a16b6652de0d38d (diff)
parent96ca83db5686f5b8983e7b008a698307130e58c9 (diff)
downloaddjango-debug-toolbar-41a7cdbc553d3180f0e355a850bda61f0500d7c1.tar.bz2
Merge branch 'explain' of git@github.com:robhudson/django-debug-toolbar
Diffstat (limited to 'debug_toolbar/panels')
-rw-r--r--debug_toolbar/panels/sql.py21
1 files changed, 12 insertions, 9 deletions
diff --git a/debug_toolbar/panels/sql.py b/debug_toolbar/panels/sql.py
index f23e317..757505a 100644
--- a/debug_toolbar/panels/sql.py
+++ b/debug_toolbar/panels/sql.py
@@ -1,3 +1,4 @@
+import simplejson
import time
from debug_toolbar.panels import DebugPanel
from django.db import connection
@@ -20,7 +21,7 @@ class DatabaseStatTracker(util.CursorDebugWrapper):
'sql': self.db.ops.last_executed_query(self.cursor, sql, params),
'time': stop - start,
'raw_sql': sql,
- 'params': params,
+ 'params': simplejson.dumps(params),
})
util.CursorDebugWrapper = DatabaseStatTracker
@@ -36,13 +37,6 @@ class SQLDebugPanel(DebugPanel):
self._offset = len(connection.queries)
self._sql_time = 0
- def _reformat_sql(self, sql):
- sql = sql.replace('`,`', '`, `')
- sql = sql.replace('` FROM `', '` \n FROM `')
- sql = sql.replace('` WHERE ', '` \n WHERE ')
- sql = sql.replace(' ORDER BY ', ' \n ORDER BY ')
- return sql
-
def title(self):
self._sql_time = sum(map(lambda q: float(q['time']) * 1000, connection.queries))
return '%d SQL Queries (%.2fms)' % (len(connection.queries), self._sql_time)
@@ -53,10 +47,19 @@ class SQLDebugPanel(DebugPanel):
def content(self):
sql_queries = connection.queries[self._offset:]
for query in sql_queries:
- query['sql'] = self._reformat_sql(query['sql'])
+ query['sql'] = reformat_sql(query['sql'])
context = {
'queries': sql_queries,
'sql_time': self._sql_time,
}
return render_to_string('debug_toolbar/panels/sql.html', context)
+
+def reformat_sql(sql):
+ sql = sql.replace('`,`', '`, `')
+ sql = sql.replace('` FROM `', '` \n FROM `')
+ sql = sql.replace('` WHERE ', '` \n WHERE ')
+ sql = sql.replace('` INNER JOIN ', '` \n INNER JOIN ')
+ sql = sql.replace('` OUTER JOIN ', '` \n OUTER JOIN ')
+ sql = sql.replace(' ORDER BY ', ' \n ORDER BY ')
+ return sql