【发布时间】:2012-03-01 05:54:07
【问题描述】:
似乎 django 信号有一个“静默失败”的范例。
当我在信号函数中出现小拼写错误时,例如:-
def new_users_handler(send, user, response, details, **kwargs):
print "new_users_handler function executes"
user.is_new = True
if user.is_new:
if "id" in response:
from urllib2 import urlopen, HTTPError
from django.template.defaultfilters import slugify
from django.core.files.base import ContentFile
try:
url = None
if sender == FacebookBackend:
url = "http://graph.facebook.com/%s/picture?type=large" \
% response["id"]
elif sender == google.GoogleOAuth2Backend and "picture" in response:
url = response["picture"]
......
socialauth_registered.connect(new_users_handler, sender=None)
我使用“send”作为参数而不是“sender”,我在 devserver 标准输出中并没有真正得到任何有用的错误消息或调试信息。
是否有确保信号故障/错误消息清晰响亮的好方法?
在我上面的示例中,如果有正确的错误消息告诉我,这可能是“5 分钟”修复
name "sender" is not defined
但是相反,没有任何错误消息,我在代码库中到处寻找,试图找出为什么我的信号没有被调用......不酷。
欢迎任何建议!
【问题讨论】:
-
docs.djangoproject.com/en/dev/howto/error-reporting 你有调试到 True 吗?
标签: django django-signals