V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
daodao
V2EX  ›  Python

django明明已经安装成功了,为什么还提示No module named django.core.management

  •  
  •   daodao · 2013-11-04 21:36:06 +08:00 · 31473 次点击
    这是一个创建于 4042 天前的主题,其中的信息可能已经有所发展或是发生改变。
    django 我感觉应该是安装成功了的,已经生成了目录结构,并且导入MySQLdb也没有问题,但是我在执行

    ipython manage.py shell

    就报错下面的结果:

    ```
    ---------------------------------------------------------------------------
    ImportError Traceback (most recent call last)
    /Library/Python/2.7/site-packages/IPython/utils/py3compat.pyc in execfile(fname, *where)
    202 else:
    203 filename = fname
    --> 204 __builtin__.execfile(filename, *where)

    /Users/daodao/Desktop/djangoproject/manage.py in <module>()
    6 os.environ.setdefault("DJANGO_SETTINGS_MODULE", "djangoproject.settings")
    7
    ----> 8 from django.core.management import execute_from_command_line
    9
    10 execute_from_command_line(sys.argv)

    ImportError: No module named django.core.management
    ```

    另外,我在Python开发环境下尝试:

    import django.db

    Mac上直接弹窗『"Python"意外退出』——>好/重新打开

    怎么破啊?????
    20 条回复    1970-01-01 08:00:00 +08:00
    isaced
        1
    isaced  
       2013-11-04 21:43:41 +08:00
    django 是条坚信的路啊...
    楼主同志任重而道远~~~
    paloalto
        2
    paloalto  
       2013-11-04 22:41:58 +08:00   ❤️ 1
    是不是python版本的问题,stackoverflow上有很多类似的问题:

    http://stackoverflow.com/questions/14013728/django-no-module-named-django-core-management
    jokaye
        3
    jokaye  
       2013-11-04 23:17:16 +08:00
    激活环境了?
    mutoulbj
        4
    mutoulbj  
       2013-11-04 23:35:41 +08:00
    是不是mac升级到了10.9?我升级后Python常崩溃
    hepochen
        5
    hepochen  
       2013-11-04 23:38:52 +08:00   ❤️ 1
    恭喜GC同学也走上了这条道路。

    import django.db 这个应该是无法执行的,需要这个先执行才会生效, os.environ.setdefault("DJANGO_SETTINGS_MODULE", "djangoproject.settings")

    但貌似也不应该程序退出,最多是import错误而已……

    在python里直接import django是否可以?

    或者直接命令行看看django是否可以import
    python -c 'import django'
    python -c 'import django.core'
    python -c 'import django.core.management'
    是否都不会抛错?


    有没有可能你自己的文件夹/Users/daodao/Desktop/djangoproject/中有个子文件夹叫django?

    另外django这个包的安装,本身没有太大的依赖性,只要确认/Library/Python/2.7/site-packages/下有django的文件夹,基本都是成功安装了的。

    或者执行下面这行命令。

    ls /Library/Python/2.7/site-packages/ | grep 'django'


    - - - - - - - -

    归根结底,这个问题可能跟django本身没有多大的关系,是import失败。关于python的import逻辑,可能需要自己再去了解下。

    另外,不知道现在用的django是什么版本的(跟教程的是否是一致的),我印象中早先以前的一个django版本中默认创建出来的manage.py的处理逻辑稍微有点不一样了。 呃,这个原因的概率应该不大。


    对了,入门上手Django,我个人持保留态度。有时间可以试试了解下Flask或web.py,如果感觉更容易接受,就选后者;如果不行,就选Django。再有就是试试用PyCharm作为自己的IDE,等有一天,可以自由地在各个源码间穿梭,就感觉良好了。
    daodao
        6
    daodao  
    OP
       2013-11-04 23:41:40 +08:00
    @paloalto 还真是这个问题。

    python2.7 manage.py shell 以后就正常了。
    cctvsmg
        7
    cctvsmg  
       2013-11-04 23:41:52 +08:00
    哎,每当这种时候
    我总在想,为什么这些个IDE都不集成一个功能,就是:
    出了错误以后,自动把error code放了stackoverflow去搜,得到最接近的结果呈现出来
    hepochen
        8
    hepochen  
       2013-11-04 23:43:16 +08:00   ❤️ 1
    @mutoulbj 呃,如果是系统升级了,注意下python自己的环境是否正常

    import sys
    print sys.path

    # 这些路径,就是import默认会去遍历的目录; MacOS对这个处理跟其它的Linux比,是有些差异的。如果是系统版本升级了,照往年的经验,是可能出一些莫名其妙的问题的(比如不同的系统版本默认对应的python版本是不一定一样的,不一样的python版本对应的python环境也是不一定一样的。)。 10.9我没有升,所以并不清楚……
    daodao
        9
    daodao  
    OP
       2013-11-04 23:44:22 +08:00
    @hepochen 哈哈!谢谢,主要还是想自己动手做点小项目,之前跟朋友一起做了2个项目,都太受限于人。

    为什么入门不推荐django呢?是django比web.py学起来相对比较吃力?还是不易于Python这门语言的掌握?
    daodao
        10
    daodao  
    OP
       2013-11-04 23:46:05 +08:00
    @cctvsmg 哈哈...新人,表鄙视,我是放到Google里面的,没出来结果。所以从现在开始收藏stackoverflow啦~
    daodao
        11
    daodao  
    OP
       2013-11-04 23:46:38 +08:00
    @mutoulbj 可能跟这个也有关系吧...
    hepochen
        12
    hepochen  
       2013-11-04 23:57:19 +08:00
    @daodao 看你这个结果,应该是@mutoulbj 说的原因。你本地的python跟python2.7应该不是同一个东西。 MacOS是这样,最开始环境配置的时候,是比较容易遇到问题的。

    我最开始的时候,对Django已经非常熟悉了;后来跟朋友做一个项目的时候,开始用Flask,然后就毅然放弃了Django了,这前估计用了四五年有吧。

    Django的文档比较详尽,用的人也多一些,所以遇到再低级的问题,Google下通常都是有答案的;但到后来,Debug时会去看源码时,这就奔溃了,集成过强,关联过多,自定制很麻烦且过于复杂。

    怎么选择其实都OK的。

    但是!如果GC你是打算做移动端的应用,后端主要是负责数据处理的,呃,那就别从Django入门了!
    9hills
        13
    9hills  
       2013-11-05 00:04:59 +08:00   ❤️ 1
    升到10.9做的第一件事是重新用brew装下python。。
    geew
        14
    geew  
       2013-11-05 09:12:44 +08:00
    @cctvsmg +10086
    felinx
        15
    felinx  
       2013-11-05 09:51:12 +08:00
    @daodao 恭喜入坑,这是一条不归路!
    sharmy
        16
    sharmy  
       2013-11-05 11:01:43 +08:00
    路径问题?
    JohnSmith
        17
    JohnSmith  
       2013-11-05 16:49:23 +08:00
    你是不是装了多个版本的python了
    daodao
        18
    daodao  
    OP
       2013-11-05 23:00:49 +08:00
    @JohnSmith 确实是因为多个版本的原因,但应该不是我安装的。。可能是MACOS自带的吧
    daodao
        19
    daodao  
    OP
       2013-11-05 23:04:46 +08:00
    @9hills 我回来试了下...brew install python 之后这个问题仍然存在...
    9hills
        20
    9hills  
       2013-11-06 00:10:30 +08:00
    @daodao 需要先uninstall然后install

    或者重新link下
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3137 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 14:06 · PVG 22:06 · LAX 06:06 · JFK 09:06
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.