0

首先,我对 django 和 python 都是新手。

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

我试图了解异常的原因。

现有的 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 对于 get_resolver(None).url_patterns 中的 url_pattern:文件“/usr/local/share/.virtualenvs/my_app/lib/python2.7/site-packages/django/core/urlresolvers.py”,第 365 行,在 url_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/站点包/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 导入 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',
)
4

1 回答 1

0

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

于 2016-03-14T14:50:12.193 回答