【问题标题】:Django - ./manage.py defaults to python 2.xDjango - ./manage.py 默认为 python 2.x
【发布时间】:2015-03-30 07:21:50
【问题描述】:

所以我有:chmod +x manage.py所以我可以在需要时只使用./manage.py,但它默认为 python 2.7,但我希望它使用我也安装的 python 3.4。我知道我可以只使用python3 manage.py,但我想知道是否有办法在不调用默认python 的情况下使用快捷方式。

我在 Ubuntu 上,而不是在虚拟环境中,并且不想将 py3 设为默认值,因为我知道系统中的某些核心操作需要 py2,所以我希望有一个本地化的解决方案。

谢谢!

编辑:在这个问题之后几天,由于系统默认的python 2和python 3搞乱了,我开始在系统级别遇到问题,并通过使用virtualenv解决了冲突问题.因此,如果您处于与我相同的位置,只需使用 virtualenv(即使您不喜欢这个概念,就像我一样)它可以为您节省未来的麻烦。

【问题讨论】:

    标签: django python-3.x manage.py


    【解决方案1】:

    修复它的最简单方法是将./manage.py 中的第一行更改为

    #!/usr/bin/env python3
    

    不过最好使用virtualenv 来管理所有的python 环境。

    【讨论】:

    • 我读到更改 hashbang 可能会导致生产问题,因为它依赖于操作系统。 code.djangoproject.com/ticket/19238
    • 你一定是在开玩笑。如果您已经在 Google 上搜索过答案,为什么还要问这个问题?
    • 我想确保没有其他方法。显然我将不得不更改 hashbang,因为我认为我可以管理生产环境中的潜在问题。无论如何,感谢您的意见,我想我会将您的帖子标记为我的方案的答案。
    【解决方案2】:

    你也可以指向想要的python版本:

    python3 manage.py ...
    

    ...甚至:

    /usr/bin/python3 manage.py ....
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-05-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多