2009-08-28 65 views
0

我已经使用Apache和mod_wsgi部署了我的django应用程序。所有的设置加载很好,但是当我将用户重定向到登录页面,我得到以下错误:ViewDoesNotExist:尝试登录模块django.contrib.auth.views。错误是:'模块'对象没有属性'__file__'

File "/opt/ActivePython-2.6/lib/python2.6/site-packages/django/core/handlers/base.py", line 83, in get_response 
    request.path_info) 

    File "/opt/ActivePython-2.6/lib/python2.6/site-packages/django/core/urlresolvers.py", line 186, in resolve 
    sub_match = pattern.resolve(new_path) 

    File "/opt/ActivePython-2.6/lib/python2.6/site-packages/django/core/urlresolvers.py", line 125, in resolve 
    return self.callback, args, kwargs 

    File "/opt/ActivePython-2.6/lib/python2.6/site-packages/django/core/urlresolvers.py", line 137, in _get_callback 
    raise ViewDoesNotExist, "Tried %s in module %s. Error was: %s" % (func_name, mod_name, str(e)) 

ViewDoesNotExist: Tried login in module django.contrib.auth.views. Error was: 'module' object has no attribute '__file__' 

用或不具有登录重定向的地方,我在尝试加载时,这个错误/管理网站。

File "/opt/ActivePython-2.6/lib/python2.6/site-packages/django/core/handlers/base.py", line 92, in get_response 
    response = callback(request, *callback_args, **callback_kwargs) 

    File "/opt/ActivePython-2.6/lib/python2.6/site-packages/django/contrib/admin/sites.py", line 164, in wrapper 
    return self.admin_view(view)(*args, **kwargs) 

    File "/opt/ActivePython-2.6/lib/python2.6/site-packages/django/contrib/admin/sites.py", line 155, in inner 
    return self.login(request) 

    File "/opt/ActivePython-2.6/lib/python2.6/site-packages/django/views/decorators/cache.py", line 44, in _wrapped_view_func 
    response = view_func(request, *args, **kwargs) 

    File "/opt/ActivePython-2.6/lib/python2.6/site-packages/django/contrib/admin/sites.py", line 253, in login 
    return self.display_login_form(request, message) 

    File "/opt/ActivePython-2.6/lib/python2.6/site-packages/django/contrib/admin/sites.py", line 349, in display_login_form 
    'title': _('Log in'), 

    File "/opt/ActivePython-2.6/lib/python2.6/site-packages/django/utils/translation/__init__.py", line 62, in ugettext 
    return real_ugettext(message) 

    File "/opt/ActivePython-2.6/lib/python2.6/site-packages/django/utils/translation/trans_real.py", line 286, in ugettext 
    return do_translate(message, 'ugettext') 

    File "/opt/ActivePython-2.6/lib/python2.6/site-packages/django/utils/translation/trans_real.py", line 276, in do_translate 
    _default = translation(settings.LANGUAGE_CODE) 

    File "/opt/ActivePython-2.6/lib/python2.6/site-packages/django/utils/translation/trans_real.py", line 194, in translation 
    default_translation = _fetch(settings.LANGUAGE_CODE) 

    File "/opt/ActivePython-2.6/lib/python2.6/site-packages/django/utils/translation/trans_real.py", line 181, in _fetch 
    apppath = os.path.join(os.path.dirname(app.__file__), 'locale') 

AttributeError: 'module' object has no attribute '__file__' 

我在这台服务器上有另一个django供电站点,即使在管理站点上也能正常运行。我很难理解为什么这个行为在这个网站上弹出,但没有在另一个上弹出。

任何帮助将不胜感激!

回答

0

您的应用程序是否位于存档中,例如.zip或.egg文件?如果是这样,从它加载的模块将不会有__file__集。

+0

不是,不在档案中。好知道,但知道! – joshcody 2009-08-28 21:36:08

6

这是一个旧帖子,但我发现它是其他人的可能。

在编译视图(或视图导入的东西)出现问题时,django中的urlresolver错误就会发生。可悲的是,堆栈跟踪似乎不完整。浏览器中出现的内容绝对没有表明问题真正在哪里。

以下是我固定我的问题:

  1. 进入顶级目录为您的Django应用程序(具有settings.py和manage.py)
  2. 运行:python manage.py shell
  3. 即会把你放入Python解释器。从那里,请执行:import appname.viewWithProblems
  4. 应该抛出包含堆栈跟踪的异常,您需要找到问题。

希望别人没有我昨晚的夜晚!

相关问题