如何为初学者调试django网站

时间:2013-01-08 23:17:54

标签: django django-views

我最近开始学习Django并发现它非常有用。但有一个问题:我不知道如何正确调试网站!

例如,我下载了一些示例并尝试设置它们。但是当我访问该网站时,我得到了这个追溯。这根本没有用 - 我得到Python抱怨" str对象不可调用"。但它是如何触发的?我做了什么导致该函数调用?

有没有简单的方法来调试Django网站?

Environment:


Request Method: GET
Request URL: http://127.0.0.1:8000/

Django Version: 1.4.3
Python Version: 2.7.3
Installed Applications:
('django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.humanize',
 'django.contrib.sessions',
 'django.contrib.sites',
 'django.contrib.messages',
 'django.contrib.staticfiles',
 'django.contrib.admin',
 'forum',
 'registration')
Installed Middleware:
('django.middleware.common.CommonMiddleware',
 'django.contrib.sessions.middleware.SessionMiddleware',
 'django.middleware.csrf.CsrfViewMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware',
 'django.contrib.messages.middleware.MessageMiddleware')


Traceback:
File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py" in get_response
  111.                         response = callback(request, *callback_args, **callback_kwargs)

Exception Type: TypeError at /
Exception Value: 'str' object is not callable

1 个答案:

答案 0 :(得分:1)

您向我们展示的堆栈跟踪不是整个堆栈跟踪,它只是生成错误的位置。 django默认调试页面允许您以交互方式展开跟踪中的节点,以查看错误的起源位置。上升几个级别,找到最可能的嫌疑人 - 您自己的代码中的行号 - 并从那里进行调查。

稍后,django-debug-toolbar是一个非常有用的应用程序,用于查看大量信息以帮助调试。