Skip to main content

django_print_sql is an easy-to-use SQL debug tool for Django developers to print SQL statements

Project description

django-print-sql is an easy-to-use SQL debug tool for Django developers to print SQL statements

What’s new

2018.3.6

  • Added a decorator

  • It now prints how long it takes each query to execute, as well as the total time elapsed

Requirements

You need to have django installed (obviously).

I’ve tried it on Django 1.11.11 and 2.0.3.

If sqlparse is installed, the SQL statement wil be formatted.

Install

From pip, run:

$ pip install --upgrade django-print-sql

Consider using the --user option.

From the repository, run:

python setup.py install

to install django-print-sql on your system.

django-print-sql is compatible with Python 2.7 and Python 3 (>= 3.3) (hopefully :D).

Install sqlparse to pretty print the statements:

$ pip install --upgrade sqlparse

Usage

Example 1. Use as context manager:

from django_print_sql import print_sql

# set `count_only` to `True` will print the number of executed SQL statements only
with print_sql(count_only=False):

  # write the code you want to analyze in here,
  # e.g. some complex foreign key lookup,
  # or analyzing a DRF serializer's performance

  for user in User.objects.all()[:10]:
      user.groups.first()

Example 2. Use as decorator:

from django_print_sql import print_sql_decorator


  @print_sql_decorator(count_only=False)  # this works on class-based views as well
  def get(request):
      # your view code here

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-print-sql-2018.3.6.tar.gz (3.1 kB view details)

Uploaded Source

File details

Details for the file django-print-sql-2018.3.6.tar.gz.

File metadata

File hashes

Hashes for django-print-sql-2018.3.6.tar.gz
Algorithm Hash digest
SHA256 283a16b252b330a3009158a4b010f9db96c60380dcbdc4c2d2d8d2eba105c47e
MD5 7971c2fcb55cf6fb15d8f1ef497987ac
BLAKE2b-256 3e34a21c40a7ec37c8cdb4f1d593ec69601baab13bf27cde5574afab35dd5f7f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page