Python ImportError位于/无法导入名称截断器
因此,我已经设置了使用django 1.3和zc.buildout的旧python项目。运行服务器时,出现以下错误: 以下是完整的stacktrace:Python ImportError位于/无法导入名称截断器,python,django,makefile,virtualenv,buildout,Python,Django,Makefile,Virtualenv,Buildout,因此,我已经设置了使用django 1.3和zc.buildout的旧python项目。运行服务器时,出现以下错误: 以下是完整的stacktrace: Environment: Request Method: GET Request URL: http://127.0.0.1:8000/ Django Version: 1.3 Python Version: 2.7.6 Installed Applications: ['filebrowser', 'django.contrib.au
Environment:
Request Method: GET
Request URL: http://127.0.0.1:8000/
Django Version: 1.3
Python Version: 2.7.6
Installed Applications:
['filebrowser',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.sitemaps',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.contrib.admin',
'south',
'sugar',
'registration',
'webtopay',
'pagination',
'rest_framework',
'rest_framework.authtoken',
'mptt',
'feincms',
'feincms.module.page',
'esavadai',
'esavadai.documents',
'esavadai.users',
'esavadai.bookmarks',
'esavadai.services',
'esavadai.statistics',
'esavadai.orders',
'esavadai.emails',
'debug_toolbar',
'django_extensions',
'test_utils']
Installed Middleware:
('django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.locale.LocaleMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.middleware.csrf.CsrfResponseMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'pagination.middleware.PaginationMiddleware',
'debug_toolbar.middleware.DebugToolbarMiddleware')
Traceback:
File "/home/marijus/workspace/esavadai/eggs/Django-1.3-py2.7.egg/django/core/handlers/base.py" in get_response
89. response = middleware_method(request)
File "/home/marijus/workspace/esavadai/eggs/Django-1.3-py2.7.egg/django/utils/importlib.py" in import_module
35. __import__(name)
File "/home/marijus/workspace/esavadai/project/esavadai/urls.py" in <module>
8. admin.autodiscover()
File "/home/marijus/workspace/esavadai/eggs/Django-1.3-py2.7.egg/django/contrib/admin/__init__.py" in autodiscover
26. import_module('%s.admin' % app)
File "/home/marijus/workspace/esavadai/eggs/Django-1.3-py2.7.egg/django/utils/importlib.py" in import_module
35. __import__(name)
File "/home/marijus/workspace/esavadai/eggs/django_extensions-1.3.9-py2.7.egg/django_extensions/admin/__init__.py" in <module>
23. from django_extensions.admin.widgets import ForeignKeySearchInput
File "/home/marijus/workspace/esavadai/eggs/django_extensions-1.3.9-py2.7.egg/django_extensions/admin/widgets.py" in <module>
7. from django.utils.text import Truncator
Exception Type: ImportError at /
Exception Value: cannot import name Truncator
据我所见,django.utils.text中的Truncator类不在django 1.3中。如果我不得不猜测某个模块,它的版本在buildout中没有指定,但在django 1.3上构建这个项目时却没有使用这个类
我说得对吗?是否-我的选项是什么?Truncator类已添加到Django 1.4中。显然,您安装的django扩展版本需要django 1.4或更高版本;正是该包尝试进行此导入 您必须找到与Django 1.3安装程序配合使用的软件包的一个或多个旧版本 看看django的GitHub回购协议,你可以看到它们是在去年11月推出的。GitHub UI向我们显示,包含提交的最早标记是1.3,因此之前的版本应该仍然有效。根据GitHub标签列表和 在“版本”部分固定该软件包:
[versions]
# ...
django-extensions = 1.2.5
[versions]
# ...
django-extensions = 1.2.5