【问题标题】:Upgrade Django from 1.6.2 to latest version (~1.8)将 Django 从 1.6.2 升级到最新版本 (~1.8)
【发布时间】:2015-08-04 16:29:43
【问题描述】:

因此,我的任务是将 Django 服务器从 1.6.2 升级到最新版本(~1.8),同时将 Python 从 2.7.3 升级到 3.3。我怀疑这会破坏相当多的代码。 (我什至需要将 Ubuntu 安装从 12.04 升级到 14.04)

我想将我的 Django 应用程序从当前运行的服务器 (Ubuntu 12.04) 迁移到虚拟机,并将该环境用作沙箱进行更改。

有人会这么好心地提供有关 django 应用程序迁移的指导吗?如果您希望我提供任何具体细节,请告诉我。

谢谢。

编辑:如果有人想对这个问题投反对票,因为他们认为我没有做足够的研究,如果我知道你在寻找什么,我很乐意补充缺失的信息。

【问题讨论】:

  • 您是否使用 Git 来部署代码?如果是,我会创建一个 virtualenv,克隆存储库,升级所有包,升级 Ubuntu,然后推送新的部署。从 Django 1.6 更改为 1.8 不需要进行太多重构。有一些小例子,但大多数旧代码应该仍然可以工作。如果你真的想深入了解它,Django 1.8 将帮助你缩短很多代码,但你不需要重新做很多事情就可以开始了。
  • 我支持@jape 的想法。使用虚拟环境和 git。先升级django。一旦成功,继续升级python代码。
  • @joelgoldstick 大智若愚 (:

标签: python django migration


【解决方案1】:

从 1.5 开始的 Django 版本已经过设计,因此在 documentation 中的两个版本的 Python 上都可以使用相同的代码,这要归功于它们遵循 six compatibility layer
您可能会遇到一些与 Django 组件不严格相关的代码问题,例如打印语句和其他可能已被编码的部分。官方Python Porting Guide 应该让您知道。

Django 1.8 是 LTS(长期发布),所以升级到它是个好主意。考虑到它是从 2.7 到 3.4,迁移数据库可能会有点问题,但这很可能是您发现最多问题的地方。 How to Migrate 是一个很好的资源。
如果我没记错的话,1.6 中的目录结构有点不同,所以你必须手动移动一些代码和文件。我建议打开1.61.8 两个版本的教程页面并比较目录结构。
浏览本教程的前 2 页,您应该对迁移数据库和 settings 文件有足够的了解。这也应该有助于migrations
第 3 和第 4 页应该可以帮助您完成 viewsurls 文件的迁移。


我唯一不熟悉的是wsgi 文件的迁移,其中包含配置信息,您应该能够找到有关here 的一些基本信息。

然而,更新你的 Ubuntu 不会改变或影响任何东西。

正如jape 和joel 在cmets 中所说,使用virtualenv 和git 是一个好主意。
我想根据自己将代码推送到 Django 服务器的经验添加另一个建议:
将代码库下载到您的本地计算机并在那里工作,一旦您完成并且服务器在您的计算机上运行良好,立即将其全部推送到服务器。这样,您可以将特定于服务器机器的问题与编码问题隔离开来。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-17
    • 2020-09-07
    • 1970-01-01
    • 1970-01-01
    • 2012-04-21
    相关资源
    最近更新 更多