首页 文章

Django ImportError:无法导入名称get_permission_codename

提问于
浏览
2

我正在用django教程做探戈 . 我是第5章关于使用模型的,我正在设置管理员网站 . 我收到这个奇怪的错误:

ImportError:无法导入名称get_permission_codename

当我删除它时,这似乎消失了

admin.autodiscover()

从我的项目/ urls.py . 但我担心我将需要这样做 .

这是我运行开发服务器时获得的Traceback:

环境:请求方法:GET请求URL:http://127.0.0.1:8000 / admin / Django版本:1.5.4 Python版本:2.7.3已安装的应用程序:('django.contrib.auth','django.contrib .contenttypes','django.contrib.sessions','django.contrib.sites','django.contrib.messages','django.contrib.staticfiles','django.contrib.admin','rango')已安装的中间件:('django.middleware.common.CommonMiddleware','django.contrib.sessions.middleware.SessionMiddleware','django.middleware.csrf.CsrfViewMiddleware','django.contrib.auth.middleware.AuthenticationMiddleware','django.contrib .messages.middleware.MessageMiddleware')回溯:get_response 103中的文件“/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py”.resolver_match = resolver.resolve(request.path_info) )文件“/usr/local/lib/python2.7/dist-packages/django/core/urlresolvers.py”在解析319. for self.url_patterns中的模式:文件“/usr/local/lib/python2.7/在url_patterns 3中的dist-packages / django / core / urlresolvers.py“ 47. patterns = getattr(self.urlconf_module,“urlpatterns”,self.urlconf_module)urlconf_module 342中的文件“/usr/local/lib/python2.7/dist-packages/django/core/urlresolvers.py”.self._urlconf_module = import_module(self.urlconf_name)import_module中的文件“/usr/local/lib/python2.7/dist-packages/django/utils/importlib.py”35.导入(名称)文件“/ home / gpanterov / MyProjects / django自动发现中的/tango_with_django_project/tango_with_django_project/urls.py“6. admin.autodiscover()文件”/usr/local/lib/python2.7/dist-packages/django/contrib/admin/init.py“.import_module( '%s.admin'%app)import_module中的文件“/usr/local/lib/python2.7/dist-packages/django/utils/importlib.py”35 . import(name)File“/ usr / local / lib /python2.7/dist-packages/django/contrib/contenttypes/admin.py“in 5. from django.contrib.admin.checks import inlineModelAdminChecks File”/usr/local/lib/python2.7/dist-packages/django /contrib/admin/checks.py“in 6. from django.contrib.admin.utils import get_fields_from_path,NotR elationField,展平文件“/usr/local/lib/python2.7/dist-packages/django/contrib/admin/utils.py”,来自django.contrib.auth,导入get_permission_codename异常类型:ImportError at / admin / Exception值:无法导入名称get_permission_codename

当我删除admin.autodiscover()行时,开发服务器运行并且我能够进入管理面板,但是当我使用我之前创建的超级用户密码登录时,我收到消息“您没有权限编辑任何东西 . “而且我没有看到我创建的任何类别 .

2 回答

  • 4

    将django从最新版本(1.8)降级到旧版本(1.4)进行测试时出现此错误 .

    这里的问题是git在切换分支时不会删除 .pyc 文件(因为它们是 .gitignore '),而python只在相应的 .py 文件比 .pyc 文件更新时才重新生成它们(详情请参阅this question) .

    解决方案是删除 django/contrib/admindjango/contrib/contenttypes 目录中的所有 *.pyc 文件 .

  • 0

    无法导入名称get_permission_codename

    确保您没有在系统中安装所有版本的django . 如果有然后删除所有并安装新鲜的Django

相关问题