Return to Snippet

Revision: 5847
at April 7, 2008 16:20 by jonhenshaw


Initial Code
{% if debug %}
Queries

{{ sql_queries|length }} Quer{{ sql_queries|pluralize:"y,ies" }} {% ifnotequal sql_queries|length 0 %} (Show) {% endifnotequal %}
{% for query in sql_queries %}{% endfor %}
# 	SQL 	Time
{{ forloop.counter }} 	{{ query.sql|escape }} 	{{ query.time }}
{% endif %}

Initial URL
http://www.djangosnippets.org/snippets/93/

Initial Description
I often find something like this lurking at the end of my base templates - it'll show you which queries were run while generating the current page, but they'll start out hidden so as not to be a pain.

Of course, before this works, you'll need to satisfy all the criteria for getting debug information in your template context:

   1. Have 'django.core.context_processors.debug' in your TEMPLATE_CONTEXT_PROCESSORS setting (it was there in the default settings, last time I checked).
   2. Have your current IP in your INTERNAL_IPS setting.
   3. Use RequestContext when rendering the current template (if you're using a generic view, you're already using RequestContext).

Initial Title
Template Query Debug

Initial Tags
debug, template, query

Initial Language
Django