首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在AJAX调用中使用django-debug-toolbar?

如何在AJAX调用中使用django-debug-toolbar?
EN

Stack Overflow用户
提问于 2011-02-26 12:04:30
回答 4查看 15K关注 0票数 64

我很好奇是否有一种合理的方式将(令人惊叹的)django-debug-工具栏用于AJAX查询。

例如,我使用一个带有一堆参数的jQuery $.get来访问一个Django URL并将其内联加载。如果我有一个错误,它不会在工具栏上注册。我也不能通过复制AJAX URL来使用它,因为DDT附加到响应的body标记,并且在AJAX响应中包含body标记没有任何意义。

任何方向都会有帮助!谢谢!

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-10-17 13:55:51

我以前也遇到过同样的问题!随着我开发越来越多的AJAX密集型应用程序,我发布了一个Django Application和一个Chrome extension,它们一起解决了这个问题。

所有信息都在github存储库中。

票数 34
EN

Stack Overflow用户

发布于 2014-07-29 22:13:00

更新:此功能现已内置到django-debug-toolbar中

它是在此PR中添加的,并在3.0版中发布

旧的答案对于旧版本的工具栏可能仍然有用:

我编写了可以添加到Django Debug Toolbar中的Request History Panel for Django Debug Toolbar,以查看当前请求之外的其他请求(包括AJAX请求)。

通过pip安装:

代码语言:javascript
复制
pip install django-debug-toolbar-request-history

settings.py中,将'ddt_request_history.panels.request_history.RequestHistoryPanel'添加到DEBUG_TOOLBAR_PANELS,例如:

代码语言:javascript
复制
DEBUG_TOOLBAR_PANELS = [
    'ddt_request_history.panels.request_history.RequestHistoryPanel',  # Here it is 
    '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.templates.TemplatesPanel',
    'debug_toolbar.panels.staticfiles.StaticFilesPanel',
    'debug_toolbar.panels.cache.CachePanel',
    'debug_toolbar.panels.signals.SignalsPanel',
    'debug_toolbar.panels.logging.LoggingPanel',
    'debug_toolbar.panels.redirects.RedirectsPanel',
    'debug_toolbar.panels.profiling.ProfilingPanel',
]
票数 35
EN

Stack Overflow用户

发布于 2013-08-07 20:36:34

我最近遇到了这个问题。我的快速而有效的解决方案就是添加一些HTML视图来灵活处理相同的代码。

例如,如果我在NewRelic中看到我的网站90%的时间都花在对/search_for_book?title=的ajax调用上,我的代码可能如下所示:

代码语言:javascript
复制
views.py:

def search_for_book(request, title):
    data = _search_for_book(title)
    return json_response(data)

def test_search_for_book(request, title):
    data = _search_for_book(title)
    return http_response(data)

瓶颈将在_search_for_book代码中的某个地方;我们是否通过ajax调用它与诊断它的低效无关(至少在我的例子中是这样;YMMV)

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5124975

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档