aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--README.rst18
-rw-r--r--debug_toolbar/panels/sql.py4
2 files changed, 14 insertions, 8 deletions
diff --git a/README.rst b/README.rst
index c80e005..60aa8d0 100644
--- a/README.rst
+++ b/README.rst
@@ -3,7 +3,7 @@ Django Debug Toolbar
====================
The Django Debug Toolbar is a configurable set of panels that display various
-debug information about the current request/response and when clicked, display
+debug information about the current request/response and when clicked, display
more details about the panel's content.
Currently, the following panels have been written and are working:
@@ -32,8 +32,8 @@ Installation
Tying into middleware allows each panel to be instantiated on request and
rendering to happen on response.
- The order of MIDDLEWARE_CLASSES is important: the Debug Toolbar middleware
- must come after any other middleware that encodes the response's content
+ The order of MIDDLEWARE_CLASSES is important: the Debug Toolbar middleware
+ must come after any other middleware that encodes the response's content
(such as GZipMiddleware).
Note: The debug toolbar will only display itself if the mimetype of the
@@ -60,9 +60,9 @@ Configuration
The debug toolbar has two settings that can be set in `settings.py`:
-#. Optional: Add a tuple called `DEBUG_TOOLBAR_PANELS` to your ``settings.py``
- file that specifies the full Python path to the panel that you want included
- in the Toolbar. This setting looks very much like the `MIDDLEWARE_CLASSES`
+#. Optional: Add a tuple called `DEBUG_TOOLBAR_PANELS` to your ``settings.py``
+ file that specifies the full Python path to the panel that you want included
+ in the Toolbar. This setting looks very much like the `MIDDLEWARE_CLASSES`
setting. For example::
DEBUG_TOOLBAR_PANELS = (
@@ -101,15 +101,19 @@ The debug toolbar has two settings that can be set in `settings.py`:
* `EXTRA_SIGNALS`: An array of custom signals that might be in your project,
defined as the python path to the signal.
+ * `HIDE_DJANGO_SQL`: If set to True (the default) then code in Django itself
+ won't be show in SQL stacktraces.
+
Example configuration::
def custom_show_toolbar(request):
return True # Always show toolbar, for example purposes only.
-
+
DEBUG_TOOLBAR_CONFIG = {
'INTERCEPT_REDIRECTS': False,
'SHOW_TOOLBAR_CALLBACK': custom_show_toolbar,
'EXTRA_SIGNALS': ['myproject.signals.MySignal'],
+ 'HIDE_DJANGO_SQL': False,
}
TODOs and BUGS
diff --git a/debug_toolbar/panels/sql.py b/debug_toolbar/panels/sql.py
index d3ac7f3..c8d50d9 100644
--- a/debug_toolbar/panels/sql.py
+++ b/debug_toolbar/panels/sql.py
@@ -2,6 +2,7 @@ import os
import SocketServer
import time
import traceback
+
import django
from django.conf import settings
from django.db import connection
@@ -10,6 +11,7 @@ from django.template.loader import render_to_string
from django.utils import simplejson
from django.utils.encoding import force_unicode
from django.utils.hashcompat import sha_constructor
+
from debug_toolbar.panels import DebugPanel
# Figure out some paths
@@ -26,7 +28,7 @@ def tidy_stacktrace(strace):
trace = []
for s in strace[:-1]:
s_path = os.path.realpath(s[0])
- if django_path in s_path and not 'django/contrib' in s_path:
+ if getattr(settings, 'DEBUG_TOOLBAR_CONFIG', {}).get('HIDE_DJANGO_SQL', True) and django_path in s_path and not 'django/contrib' in s_path:
continue
if socketserver_path in s_path:
continue