我正在开发一个 Django 应用程序,该应用程序ViewDoesNotExist
在尝试从第三方应用程序(具体来说是 Solango)导入模块时偶尔会引发异常。通过“偶尔”,我的意思是经常很烦人,但绝对是少数请求。Solango 在应用程序上PYTHONPATH
,可以通过控制台可靠地导入。该错误在本地开发期间也从未发生过,因此可能与服务器设置有关(该应用程序在守护程序模式下使用 Apache + mod_wsgi)。
这是一个堆栈跟踪,显示了管理员中发生的错误(尽管它几乎出现在网站上的每个页面上):
Traceback:
File "/home/nybooks/ve/lib/python2.5/site-packages/django/core/handlers/base.py" in get_response
92. response = callback(request, *callback_args, **callback_kwargs)
File "/home/nybooks/ve/lib/python2.5/site-packages/django/contrib/admin/sites.py" in root
445. return self.index(request)
File "/home/nybooks/ve/lib/python2.5/site-packages/django/views/decorators/cache.py" in _wrapped_view_func
44. response = view_func(request, *args, **kwargs)
File "/home/nybooks/ve/lib/python2.5/site-packages/django/contrib/admin/sites.py" in index
342. context_instance=template.RequestContext(request)
File "/home/nybooks/ve/lib/python2.5/site-packages/django/shortcuts/__init__.py" in render_to_response
20. return HttpResponse(loader.render_to_string(*args, **kwargs), **httpresponse_kwargs)
File "/home/nybooks/ve/lib/python2.5/site-packages/django/template/loader.py" in render_to_string
108. return t.render(context_instance)
File "/home/nybooks/ve/lib/python2.5/site-packages/django/template/__init__.py" in render
178. return self.nodelist.render(context)
File "/home/nybooks/ve/lib/python2.5/site-packages/django/template/__init__.py" in render
778. bits.append(self.render_node(node, context))
File "/home/nybooks/ve/lib/python2.5/site-packages/django/template/__init__.py" in render_node
791. return node.render(context)
File "/home/nybooks/ve/lib/python2.5/site-packages/django/template/loader_tags.py" in render
97. return compiled_parent.render(context)
File "/home/nybooks/ve/lib/python2.5/site-packages/django/template/__init__.py" in render
178. return self.nodelist.render(context)
File "/home/nybooks/ve/lib/python2.5/site-packages/django/template/__init__.py" in render
778. bits.append(self.render_node(node, context))
File "/home/nybooks/ve/lib/python2.5/site-packages/django/template/__init__.py" in render_node
791. return node.render(context)
File "/home/nybooks/ve/lib/python2.5/site-packages/django/template/loader_tags.py" in render
97. return compiled_parent.render(context)
File "/home/nybooks/ve/lib/python2.5/site-packages/django/template/__init__.py" in render
178. return self.nodelist.render(context)
File "/home/nybooks/ve/lib/python2.5/site-packages/django/template/__init__.py" in render
778. bits.append(self.render_node(node, context))
File "/home/nybooks/ve/lib/python2.5/site-packages/django/template/__init__.py" in render_node
791. return node.render(context)
File "/home/nybooks/ve/lib/python2.5/site-packages/django/template/defaulttags.py" in render
245. return self.nodelist_true.render(context)
File "/home/nybooks/ve/lib/python2.5/site-packages/django/template/__init__.py" in render
778. bits.append(self.render_node(node, context))
File "/home/nybooks/ve/lib/python2.5/site-packages/django/template/__init__.py" in render_node
791. return node.render(context)
File "/home/nybooks/ve/lib/python2.5/site-packages/django/template/defaulttags.py" in render
255. return self.nodelist_true.render(context)
File "/home/nybooks/ve/lib/python2.5/site-packages/django/template/__init__.py" in render
778. bits.append(self.render_node(node, context))
File "/home/nybooks/ve/lib/python2.5/site-packages/django/template/__init__.py" in render_node
791. return node.render(context)
File "/home/nybooks/ve/lib/python2.5/site-packages/django/template/loader_tags.py" in render
24. result = self.nodelist.render(context)
File "/home/nybooks/ve/lib/python2.5/site-packages/django/template/__init__.py" in render
778. bits.append(self.render_node(node, context))
File "/home/nybooks/ve/lib/python2.5/site-packages/django/template/__init__.py" in render_node
791. return node.render(context)
File "/home/nybooks/ve/lib/python2.5/site-packages/django/template/defaulttags.py" in render
372. url = reverse(self.view_name, args=args, kwargs=kwargs)
File "/home/nybooks/ve/lib/python2.5/site-packages/django/core/urlresolvers.py" in reverse
265. *args, **kwargs)))
File "/home/nybooks/ve/lib/python2.5/site-packages/django/core/urlresolvers.py" in reverse
238. possibilities = self.reverse_dict.getlist(lookup_view)
File "/home/nybooks/ve/lib/python2.5/site-packages/django/core/urlresolvers.py" in _get_reverse_dict
165. for name in pattern.reverse_dict:
File "/home/nybooks/ve/lib/python2.5/site-packages/django/core/urlresolvers.py" in _get_reverse_dict
173. lookups.appendlist(pattern.callback, (bits, p_pattern))
File "/home/nybooks/ve/lib/python2.5/site-packages/django/core/urlresolvers.py" in _get_callback
134. raise ViewDoesNotExist, "Could not import %s. Error was: %s" % (mod_name, str(e))
Exception Type: ViewDoesNotExist at /admin/
Exception Value: Could not import solango.views. Error was: cannot import name settings
关于导致问题的任何想法,或者至少我可以如何调试它?