【问题标题】:Django: how to upgrade from 1.1 to 1.2?Django:如何从 1.1 升级到 1.2?
【发布时间】:2023-03-16 23:48:01
【问题描述】:

有谁知道如何/谁能链接到有关如何从 Django 1.1 升级到 Django 1.2 的简单说明?

我可以找到大量关于它们之间差异的文档,以及您需要对项目进行的更改等。

我找不到的其实是如何升级!

谢谢。

【问题讨论】:

    标签: django


    【解决方案1】:

    我通常从我的 Python site-packages 目录创建一个符号链接到我正在使用的 Django 版本。当我更改版本时,我只是将符号链接更改为指向正确的版本。这是用于创建符号链接的documentation。文档提到了开发版本,但您可以为任何版本执行此操作。

    【讨论】:

      【解决方案2】:

      Django 1.2 与 1.1 完全兼容,因此您的项目可以保持不变。

      要在您的服务器中更新 django: 如果你已经有一个 svn 存储库,只需更新它,否则卸载 Django 然后从这里重新下载它http://www.djangoproject.com/download/我从来没有遇到过主干版本的问题,但这是你的决定。

      【讨论】:

      • 这显然是错误的。 Django 1.2 包含了几个有据可查的向后不兼容的更改(特别是对 CSRF 保护的更改)。向后不兼容的更改可能不会影响所有使用的人,但对于大多数人来说,升级至少需要一些代码调整。
      【解决方案3】:
      svn co http://code.djangoproject.com/svn/django/trunk/ django-trunk
      cd django-trunk
      sudo python setup.py install
      

      【讨论】:

      • 这不会将您升级到 1.2,而是将您升级到主干。
      • 谢谢 - 但是我如何将现有项目指向这个版本的 Django,而不是它目前使用的那个?
      • @AP257:我通常会从我的 Python 站点包目录创建一个符号链接,指向我正在使用的 Django 版本。当我更改版本时,我只是将符号链接更改为指向正确的版本。
      【解决方案4】:

      首先关注instructions for removing old versions of Django

      然后,您可以按照以下步骤拉取 1.2.x 的已发布分支:

      svn co http://code.djangoproject.com/svn/django/branches/releases/1.2.X/ django
      cd django
      sudo python setup.py install
      

      不过,我同意 uanefren。使用 trunk 从来没有给我带来任何问题,而且它可能拥有最好的持续支持和最新的文档。

      【讨论】:

        【解决方案5】:

        这是一个使用 pip 的好链接:how do you install django older version using easy_install?,它基本上归结为:

        pip install --upgrade django==1.2.5(这是AFAIK 1.2的最新版本)

        另外,在升级之前,请务必阅读:

        https://docs.djangoproject.com/en/1.2/releases/1.2/

        https://docs.djangoproject.com/en/1.2/ref/contrib/csrf/#ref-csrf-upgrading-notes

        随着 1.2 对 CSRF 令牌实施重大更改。此外,请确保您的保存和删除方法包括 **kwargs,因为多个数据库更改会在保存(可能还有删除)方法中添加一个 kwarg。 如果你运行 Activestate,你可以使用 pypm install django==1.2.5 代替。

        【讨论】:

          【解决方案6】:

          恕我直言,像这样的升级最常见的问题是您在升级方式中会遇到的 CSRF 保护更改。 这里的主要内容是阅读您的 django 版本的https://docs.djangoproject.com/en/1.3/releases/。 1.2 适合你。

          此更新有一些向后不兼容的更改,CSRF 保护几乎在 1.2 版本更改中描述。

          博客上也有一些文章,如http://garmoncheg.blogspot.com/2011/07/django-upgrading-django-from-11-to-125.html。下面简单介绍一下这个问题。

          希望这对解决这些问题的人有所帮助。

          【讨论】:

            猜你喜欢
            • 2017-09-30
            • 1970-01-01
            • 1970-01-01
            • 2013-03-31
            • 2012-03-18
            • 1970-01-01
            • 1970-01-01
            • 2010-12-15
            • 1970-01-01
            相关资源
            最近更新 更多