将Django升级到1.4.1

时间:2012-08-05 09:36:08

标签: django

根据documentation,如果像python setup.py install手动安装Django,则需要手动删除该目录。

我通过从Shell

运行来找到安装Django的位置
python -c "import sys; sys.path = sys.path[1:]; import django; print(django.__path__)"

并从/usr/local/lib/python2.7/dist-packages/django

删除了django目录

此后我尝试以自动方式安装1.4.1:

sudo pip install Django

令人惊讶的是它拒绝安装它:

Requirement already satisfied (use --upgrade to upgrade): Django in /usr/local/lib/python2.7/dist-packages
Cleaning up...

所以我别无选择,即使文档没有反映出来。

sudo pip install Django --upgrade

日志:

Downloading/unpacking Django
  Downloading Django-1.4.1.tar.gz (7.7Mb): 7.7Mb downloaded
  Running setup.py egg_info for package Django

Installing collected packages: Django
  Found existing installation: Django 1.4
    Uninstalling Django:
      Successfully uninstalled Django
  Running setup.py install for Django
    changing mode of build/scripts-2.7/django-admin.py from 644 to 755

    changing mode of /usr/local/bin/django-admin.py to 755
Successfully installed Django
Cleaning up...

文档似乎没有提到django文件不仅在/python2.7/dist-packages/django中,而且在/usr/local/bin/django-admin.py

我想知道这样做是否正确,因为文档明确警告:

  

如果使用此安装技术,则尤为重要   您首先删除任何现有的Django安装。除此以外,   您最终可能会遇到包含文件的破坏安装   以前从Django中删除的版本。

2 个答案:

答案 0 :(得分:1)

一切都好。

Normaly在/ usr / local / bin中只有一个符号链接。

答案 1 :(得分:0)

我正在经历这种混乱,因为Django文档中关于如何安装Django的语言不足。请注意,如果您使用了python setup.py,那么您必须手动删除“site-packages”中的Django内容 - 而不是像Kave那样从“dist-packages”中删除。

你可以通过将Django拖放到site-packages中来手动安装它(如果你还没有通过PIP或EasyInstall安装它)。

他们说如果您使用过PIP或EasyInstall,那么您可以让这些程序为您处理删除。这可能意味着你不敢在那种情况下手动删除,因为Kave建议。

Django的某个人是否愿意写下这些文字具有精确的含义。

我现在无法回过头来尝试在以前的版本上安装1.4,因为1.4是我开始使用的版本。但Kave,也许你和我一样,不记得你是如何安装以前版本的。您当时可能已经使用过EasyInstall甚至PIP,从而导致Django文件夹被放置在dist-packages而不是site-packages中。

我在dist-packages文件夹中找到了一个带有旧Django版本的“egg”信息文件。 EasyInstall使用鸡蛋;简要介绍一下setup.py文档,它表明它没有。