跳转到主要内容

一组小工具,用于协助Django开发

项目描述

简介

debugtools模块提供了一些易于使用的调试工具,以协助Django开发。它具有以下功能:

  • 一个用于打印上下文的模板标签。

  • 一个XViewMiddleware变体,可以查看用于渲染页面的哪个视图模板

  • 一个用于django-debug-toolbar的面板,显示用于渲染页面的哪个视图模板

  • 一个jQuery debug()函数。

安装

首先安装该模块,最好在虚拟环境中安装。可以从PyPI安装

pip install django-debugtools

或者当前文件夹可以安装

pip install .

配置

将模块添加到已安装的应用程序中

INSTALLED_APPS += (
    'debugtools',
)

从Django 1.9开始,可以使用{% load debugtools_tags %}或向设置中添加以下内容

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                # ...
            ],
           'builtins': [                                     # Add this section
                "debugtools.templatetags.debugtools_tags",   # Add this line
            ],
        },
    },
]

或者,当您使用local.py设置文件时

TEMPLATES[0]['OPTIONS']['builtins'] += [
    "debugtools.templatetags.debugtools_tags",  # enables {% print %}
]

功能

调试工具栏面板

将以下设置添加到您的 django-debug-toolbar 配置中

DEBUG_TOOLBAR_PANELS = (
    'debug_toolbar.panels.versions.VersionsPanel',
    'debug_toolbar.panels.timer.TimerPanel',
    'debug_toolbar.panels.settings.SettingsPanel',
    'debug_toolbar.panels.headers.HeadersPanel',
    'debug_toolbar.panels.request.RequestPanel',
    'debug_toolbar.panels.sql.SQLPanel',
    'debug_toolbar.panels.staticfiles.StaticFilesPanel',
    'debugtools.panels.ViewPanel',    # Add this one
    'debug_toolbar.panels.templates.TemplatesPanel',
    'debug_toolbar.panels.cache.CachePanel',
    'debug_toolbar.panels.signals.SignalsPanel',
    'debug_toolbar.panels.logging.LoggingPanel',
    'debug_toolbar.panels.redirects.RedirectsPanel',
)
https://github.com/edoburu/django-debugtools/raw/master/docs/images/debug-toolbar.png

jQuery 调试打印

将以下内容添加到页面中

<script type="text/javascript" src="{{ STATIC_URL }}debugtools/jquery.debug.js"></script>

现在您可以将 jQuery 选择器上下文打印到控制台

$("#foo").children('li').debug().addClass('bar');

这将打印匹配的 <li> 元素到控制台,同时显示当前的 jQuery 选择器。可选地,可以在 debug() 调用中包含一个前缀。

$("#foo").debug("at baz: ").addClass('bar');

X-视图中间件

作为 django-debug-toolbar 面板的替代方案,您也可以添加 XViewMiddleware。添加以下设置

INTERNAL_IPS = (
    '127.0.0.1',
)

MIDDLEWARE_CLASSES += (
    'debugtools.middleware.XViewMiddleware',
)

来自内部 IP 的所有请求或由管理员用户发起的请求都将带有 X-View 标头和 X-View-Template 标头。在 Firebug 控制台或 Chrome 网络检查器中,您可以看到哪个视图和模板处理了当前请求

https://github.com/edoburu/django-debugtools/raw/master/docs/images/firebug-xview.png

还显示替代模板,以防视图允许使用不同的名称覆盖模板。

项目详情


下载文件

下载您平台上的文件。如果您不确定要选择哪一个,请了解有关 安装包 的更多信息。

源分发

django-debugtools-2.0.tar.gz (21.7 kB 查看散列)

上传时间

构建分发

django_debugtools-2.0-py3-none-any.whl (21.4 kB 查看散列)

上传时间 Python 3

由以下支持