django监护人importerror但其他例子工作

时间:2016-03-03 23:11:18

标签: python django python-2.7 django-admin django-guardian

首先,我是django和python的新手。

我正在使用django-guardian 1.3.2的现有项目。我验证了此应用程序部署的服务器也通过pip list使用1.3.2。

我试图了解异常的原因。

现有的admin.py文件,加载得很好。

#!/usr/bin/env python
# coding: utf-8
from guardian.admin import GuardedModelAdmin
from django.contrib import admin

from devices import models


class SomeModelAdmin(GuardedModelAdmin):
  pass


admin.site.register(models.SomeModel, SomeModelAdmin)

我添加了我的,这也适用(在我的机器上)。

#!/usr/bin/env python
# coding: utf-8
from guardian.admin import GuardedModelAdmin


from django.contrib import admin
from common import models


class MyModel1Admin(GuardedModelAdmin):
    pass


admin.site.register(models.MyModel1, MyModel1Admin)


class MyModel2Admin(GuardedModelAdmin):
    pass


admin.site.register(models.MyModel2, MyModel2Admin)

我们部署了应用程序,现在它无法启动以下异常:

  

Traceback(最近一次调用最后一次):文件   “/usr/local/share/.virtualenvs/my_app/lib/python2.7/site-packages/django/core/handlers/wsgi.py”   187行,在电话中       self.load_middleware()文件“/usr/local/share/.virtualenvs/my_app/lib/python2.7/site-packages/django/core/handlers/base.py”,   第47行,在load_middleware中       mw_instance = mw_class()文件“/usr/local/share/.virtualenvs/my_app/lib/python2.7/site-packages/django/middleware/locale.py”,   第24行,在 init 中       for get_resolver中的url_pattern(无).url_patterns:文件“/usr/local/share/.virtualenvs/my_app/lib/python2.7/site-packages/django/core/urlresolvers.py”,   第365行,在url_patterns中       patterns = getattr(self.urlconf_module,“urlpatterns”,self.urlconf_module)文件   “/usr/local/share/.virtualenvs/my_app/lib/python2.7/site-packages/django/core/urlresolvers.py”   第360行,在urlconf_module中       self._urlconf_module = import_module(self.urlconf_name)文件“/usr/local/share/.virtualenvs/my_app/lib/python2.7/site-packages/django/utils/importlib.py”,   第40行,在import_module中       导入(名称)文件“./sites/zpanel/urls.py”,第19行,在       admin.autodiscover()文件“/usr/local/share/.virtualenvs/my_app/lib/python2.7/site-packages/django/contrib/admin/init.py”,   第29行,在自动发现中       import_module('%s.admin'%app)文件“/usr/local/share/.virtualenvs/my_app/lib/python2.7/site-packages/django/utils/importlib.py”,   第40行,在import_module中       导入(名称)文件“./common/admin.py”,第3行,中       来自guardian.admin import GuardedModelAdmin ImportError:没有名为admin的模块

服务器正在运行python 2.7.6,我使用的是2.7.10。我不认为这是一个问题,因为其他admin.py文件从guardina.admin导入就好了。

INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'django.contrib.sites',
    'sites.this_app',
    'notifications.email',
    'raven.contrib.django.raven_compat',
    'guardian',
    'my_stuff',
    'existing_ones'
    'rest_framework',
    'rest_framework.authtoken',
    'south',
    'djangular',
    'widget_tweaks',
    'djrill',
    'corsheaders',
    'django_extensions',
    'parler',
    'watson',
    'baldr',
)

1 个答案:

答案 0 :(得分:0)

事实证明,在我的guardian文件所在的目录中有一个名为admin.py的目录。此目录不在源(不再)中,也不在我的本地计算机上。我想这是很久以前某些部署的残留......