blob: 1d81a05fee2f15d1eae9cf178d97813ed37ebb24 (
plain)
| 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
 | Commands
========
The Debug Toolbar currently provides one Django management command.
``debugsqlshell``
-----------------
This command starts an interactive Python shell, like Django's built-in
``shell`` management command. In addition, each ORM call that results in a
database query will be beautifully output in the shell.
Here's an example::
    >>> from page.models import Page
    >>> ### Lookup and use resulting in an extra query...
    >>> p = Page.objects.get(pk=1)
    SELECT "page_page"."id",
           "page_page"."number",
           "page_page"."template_id",
           "page_page"."description"
    FROM "page_page"
    WHERE "page_page"."id" = 1
    >>> print p.template.name
    SELECT "page_template"."id",
           "page_template"."name",
           "page_template"."description"
    FROM "page_template"
    WHERE "page_template"."id" = 1
    Home
    >>> ### Using select_related to avoid 2nd database call...
    >>> p = Page.objects.select_related('template').get(pk=1)
    SELECT "page_page"."id",
           "page_page"."number",
           "page_page"."template_id",
           "page_page"."description",
           "page_template"."id",
           "page_template"."name",
           "page_template"."description"
    FROM "page_page"
    INNER JOIN "page_template" ON ("page_page"."template_id" = "page_template"."id")
    WHERE "page_page"."id" = 1
    >>> print p.template.name
    Home
 |