83
Both Ned’s and blaine’s answers are good, but if you really want to achieve exactly what you ask for there’s a template tag for it:
{% debug %}
More information in the context_processor.debug including:
If this processor is enabled, every RequestContext will contain debug
and and sql_queries variables – but only if your DEBUG setting
is set to True and the request’s IP address (request.META['REMOTE_ADDR']
)
is in the INTERNAL_IPS setting
Similar to Peter G suggestion, I often use a <div id="django-debug"><pre>{% debug|escape %}</pre></div>
block at the end of the page that has display:none
but that I can inspect to debug.
- [Django]-Django URL Redirect
- [Django]-Unable to import path from django.urls
- [Django]-What is "load url from future" in Django
10
You might also be interested in django-template-repl, a readline shell for the Django template language. You can drop a {% load repl %}{% pdb %}
into your template and get an interactive debugger.
- [Django]-How to convert a Django QuerySet to a list?
- [Django]-Inline in ModelForm
- [Django]-Django manage.py Unknown command: 'syncdb'
6
While the two solutions provided by the other members may get you access to all the variables in a template I thought there had to be an easier way (thanks for your responses, BTW).
Here is a simple way to find all the variables passed to the template.
- Introduce an error into the template you want to examine. Adding a non-existent tag works.
- Ensure that debugging is ON.
- Browse to the page that loads the template. (your site must be running via runserver or some other means).
The debugging output for the template contains a section called “TraceBack”. Find the traceback for your view (second entry from the top in my case) and click on “Local vars”. And it’s all there.
- [Django]-What's the best Django search app?
- [Django]-How to add Indian Standard Time (IST) in Django?
- [Django]-Django: Set foreign key using integer?