AttributeError: 'NoneType'对象没有'tags'属性 - 升级Django至1.6.5

1 投票
1 回答
569 浏览
提问于 2025-04-18 17:10

我正在尝试把一个旧项目从Django 1.4升级到Django 1.7,而且我是一个版本一个版本地升级。我已经成功让它在1.5.8上正常运行,但在1.6.5上遇到了下面的错误(这个错误在最新的1.7c2中也出现):

mod_wsgi (pid=2364): Exception occurred processing WSGI script '/home/dev/web/project_dir/wsgi/dev/dev-project-local.wsgi'.
Traceback (most recent call last):
  File "/home/dev/.envs/project_env/lib/python2.7/site-packages/django/core/handlers/wsgi.py", line 206, in __call__
    response = self.get_response(request)
  File "/home/dev/.envs/project_env/lib/python2.7/site-packages/django/core/handlers/base.py", line 146, in get_response
    response = debug.technical_404_response(request, e)
  File "/home/dev/.envs/project_env/lib/python2.7/site-packages/django/views/debug.py", line 481, in technical_404_response
    t = Template(TECHNICAL_404_TEMPLATE, name='Technical 404 template')
  File "/home/dev/.envs/project_env/lib/python2.7/site-packages/django/template/base.py", line 125, in __init__
    self.nodelist = compile_string(template_string, origin)
  File "/home/dev/.envs/project_env/lib/python2.7/site-packages/django/template/base.py", line 152, in compile_string
    parser = parser_class(lexer.tokenize())
  File "/home/dev/.envs/project_env/lib/python2.7/site-packages/django/template/base.py", line 239, in __init__
    self.add_library(lib)
  File "/home/dev/.envs/project_env/lib/python2.7/site-packages/django/template/base.py", line 353, in add_library
    self.tags.update(lib.tags)
AttributeError: 'NoneType' object has no attribute 'tags'

这个错误可能是什么原因造成的,我应该在哪里找问题呢?

我使用的是Python 2.7.3,mod_wsgi和apache。

谢谢

1 个回答

1

这个问题是因为我的项目加载了一个已经不再使用的东西,叫做 django.contrib.markup.templatetags.markup。我发现这个东西在项目里并没有被用到,所以我把它删掉后,页面就正常工作了。

撰写回答