首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >django导入错误-没有名为core.management的模块

django导入错误-没有名为core.management的模块
EN

Stack Overflow用户
提问于 2011-05-19 03:21:20
回答 25查看 324.6K关注 0票数 196

好的,我看到了很多这样的错误。我已经尝试了我所知道的一切,但还没有弄清楚这一点。

我在一个运行python2.5和Django 1.3的开发服务器上工作。Django1.3是在解压tar.gz下载文件后使用python setup.py install安装的。

一切运行正常,我很少需要运行manage.py,但我正在尝试使用新的staticfiles应用程序,但遇到了问题。

代码语言:javascript
复制
python manage.py collectstatic
Traceback (most recent call last):
  File "manage.py", line 2, in <module>
    from django.core.management import execute_manager
ImportError: No module named core.management

好的,我有PATH的问题。

Django install中,我仔细检查了我的site-packages目录。

代码语言:javascript
复制
python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()"
/usr/lib/python2.5/site-packages

好的,让我们看看我有什么,echo $PYTHON_PATH是空的,所以我设置了它

代码语言:javascript
复制
export PYTHON_PATH=/usr/lib/python2.5/site-packages/django

还是不走运。让我们看看sys.path有什么要说的

代码语言:javascript
复制
>>> import sys
>>> print sys.path
['', '/usr/lib/python2.5', '/usr/lib/python2.5/plat-linux2', '/usr/lib/python2.5/lib-tk', '/usr/lib/python2.5/lib-dynload', '/usr/local/lib/python2.5/site-packages', '/usr/lib/python2.5/site-packages', '/usr/lib/python2.5/site-packages/PIL', '/usr/lib/python2.5/site-packages/django', '/var/lib/python-support/python2.5']

path在那里,我甚至创建了/usr/lib/python2.5/site-package/django.pth

代码语言:javascript
复制
cat /usr/lib/python2.5/site-packages/django.pth 
/usr/lib/python2.5/site-packages/django/

有谁知道这是怎么回事吗?

我在这条路上找到了一个符号链接,但没有找到新的错误。

代码语言:javascript
复制
python manage.py collectstatic
Traceback (most recent call last):
  File "manage.py", line 14, in <module>
    execute_manager(settings)
  File "/usr/lib/python2.5/site-packages/django/core/management/__init__.py", line 438, in execute_manager
    utility.execute()
  File "/usr/lib/python2.5/site-packages/django/core/management/__init__.py", line 349, in execute
    version=get_version(),
  File "/usr/lib/python2.5/site-packages/django/__init__.py", line 12, in get_version
    from django.utils.version import get_svn_revision
ImportError: No module named utils.version

我还尝试创建一个新项目,看看是否有任何问题,并得到相同的utils.version错误。

Side node:来自#django的Unode帮了我一点忙,在同一台机器上设置了virtualenv,并克服了错误,所以仍然不确定这里的实际安装是怎么回事,但它似乎不在django项目中,而是在django/python安装中。

EN

回答 25

Stack Overflow用户

回答已采纳

发布于 2011-05-19 22:08:06

众所周知,这是一个路径问题。

我的自定义包的基础与/etc/profile中设置的目录共享一个名称。然而,对于were服务器,这些包位于不同的位置。因此,我从我的$PYTHONPATH中删除了有问题的条目,并准备好了!

谢谢你的帮助。

票数 12
EN

Stack Overflow用户

发布于 2012-05-25 22:42:53

如果你像我一样,在一个虚拟环境中运行你的django,并得到这个错误,看看你的manage.py。第一行应该定义用于运行脚本的python可执行文件。这应该是您的virtualenv的python的路径,但它是错误的,如/usr/bin/python,它不是相同的路径,将使用全局python环境(包将丢失)。只需将路径更改为您的virtualenv中的python可执行文件的路径。

您也可以用#!/usr/bin/env python替换您的shebang行。这应该使用正确的python环境和解释器,前提是您首先激活了您的virtualenv (我假设您知道如何执行此操作)。

票数 172
EN

Stack Overflow用户

发布于 2013-06-12 02:07:05

如果您在virtualenv中,则需要先激活它,然后才能运行./manage.py 'command‘

代码语言:javascript
复制
source path/to/your/virtualenv/bin/activate

如果您在.bash_profile或.bashrc中配置工作区

代码语言:javascript
复制
workon yourvirtualenvname

*请不要编辑您的manage.py文件,因为其工作方式可能不正确,可能会给您带来未来的错误

票数 41
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6049933

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档