【问题标题】:Upgrade python 2 to 3 and django 1.6 to 1.7将 python 2 升级到 3 和 django 1.6 到 1.7
【发布时间】:2014-06-19 05:58:40
【问题描述】:

我在 python 2.7 和 django 1.6 中开发了一个 django-rest api 项目,现在我想在 python 3.4 和 django 1.7 中升级它。

我想知道移植我的代码的最佳方式以及移植我的代码可能会产生什么后果。

【问题讨论】:

  • 最好的方法之一是使用unittest。在新版本的 django 中检查你的测试文件
  • Django 1.7 甚至还没有发布。尝试一次进行一项升级,而不是同时进行两项升级。例如,让您的项目使用 Python 3 和 Django 1.6,然后再升级 Django。
  • pip install PIL in python 3.2 virtualenv 显示错误....“文件”/home/usr/work/fsop3.3/build/PIL/setup.py”,第 182 行打印“-- - 在", TCL_ROOT ^ SyntaxError: invalid syntax" 处使用 Tcl/Tk 库

标签: python django django-rest-framework


【解决方案1】:

就像评论说的那样,使用单元测试并确保代码的每一行都被测试命中。许多模块名称已更改/已移动或与其他模块组合。每次你的单元测试说它找不到某个模块或方法时,你可以使用本指南来弄清楚如何重命名你的导入/函数调用。 http://www.diveintopython3.net/porting-code-to-python-3-with-2to3.html

【讨论】:

  • 集成测试更适合完整的代码覆盖。您无法对 3rd 方库以及您的应用如何与它们进行交互进行单元测试。 (好吧,反正不是很有效。)
  • 谢谢....但我正在尝试在我的 virtualenv(python3.2) 中安装 PIL(pip install PIL) 并显示错误....“文件”/home/usr/work /fsop3.3/build/PIL/setup.py", line 182 print "--- using Tcl/Tk libraries at", TCL_ROOT ^ SyntaxError: invalid syntax" 如何解决?
  • 据我所知,PIL 与 python 3 不兼容。使用枕头。无论如何,它的 djangos 首选图像库。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-22
  • 2017-01-17
  • 1970-01-01
  • 2015-02-06
  • 2015-05-12
  • 1970-01-01
相关资源
最近更新 更多