0

add_to_builtins('gravatar.gravatar')

  • 正在我的 settings.py 文件中使用,它会导致页面加载崩溃并出现以下错误:

回溯(最近一次通话最后):

文件“C:\development\python\Lib\site-packages\django\core\servers\basehttp.py”,第 283 行,运行中 self.result = application(self.environ, self.start_response)

文件“C:\development\python\Lib\site-packages\django\contrib\staticfiles\handlers.py”,第 68 行,调用 return self.application(environ, start_response)

文件“C:\development\python\Lib\site-packages\django\core\handlers\wsgi.py”,第 272 行,调用 响应 = self.get_response(request)

文件“C:\development\python\Lib\site-packages\django\core\handlers\base.py”,第 169 行,在 get_response response = self.handle_uncaught_exception(request, resolver, sys.exc_info())

文件“C:\development\python\Lib\site-packages\django\core\handlers\base.py”,第 203 行,在 handle_uncaught_exception 返回 debug.technical_500_response(request, *exc_info)

文件“C:\development\python\Lib\site-packages\django\views\debug.py”,第 59 行,位于 Technical_500_response html =reporter.get_traceback_html()

文件“C:\development\python\Lib\site-packages\django\views\debug.py”,第 128 行,在 get_traceback_html t = Template(TECHNICAL_500_TEMPLATE, name='Technical 500 template')

文件“C:\development\python\Lib\site-packages\django\template\base.py”,第 108 行,在init self.nodelist = compile_string(template_string, origin)

文件“C:\development\python\Lib\site-packages\django\template\base.py”,第 135 行,在 compile_string parser = parser_class(lexer.tokenize())

文件“C:\development\python\Lib\site-packages\django\template\debug.py”,第 34 行,在init super(DebugParser, self) 中。初始化(词法分析器)

文件“C:\development\python\Lib\site-packages\django\template\base.py”,第 208 行,init print lib.tags

AttributeError:“NoneType”对象没有属性“标签”

如果我在不使用 add_to_builtins 功能的情况下使用 gravatar 没有任何问题 - 也就是说,在我的视图中使用普通的旧加载标签。我只是在使用它,所以我想我可能会使用 add_to_builtins 功能。

从外观上看,导入的版本崩溃是因为import_library(module)for gravatar.gravatar 返回 None (我知道这一点是因为我打印了那行,它返回 None) - 我所做的有什么问题?

4

1 回答 1

0

哦,重力。

好的,所以我在如何使用 add_to_builtins 导入这个问题上完全错了——我需要做的是:

add_to_builtins('gravatar.templatetags.gravatar')

我不确定为什么,但这是一种享受。现在我不需要任何凌乱的“加载”语句,我可以愉快地调用

{% gravatar story.user 40 %}

从我的任何模板。耶!

于 2012-06-22T03:41:05.403 回答