【发布时间】:2021-05-21 20:35:21
【问题描述】:
我有一个 django 应用程序,我正在其中导入一个 3rd 方应用程序。该应用程序是为 python3 编写的,但是我的应用程序环境是 python 2.7 和 django 1.11.16。
第 3 方应用程序与 python2 配合得很好,除了开头的一行。第 3 方应用程序的文件之一包含以下内容:
from urllib.parse import urlencode, quote
。如果我将此行更改为
from urllib import urlencode, quote
在 virtualenv 中,它可以完美运行,但是这是一个非常糟糕的解决方案。
我不想分叉整个应用程序,但有没有其他解决方法?
【问题讨论】:
-
你能分享第 3 方应用名称吗?
-
当然,它是 etsy2 。
-
请注意,django 1.11 同时支持 python 2 和 3。你应该升级你的开发环境。 Python 2 即将报废。如果你继续使用 python 2,事情只会变得更糟。所以一个明智的策略是首先升级到 python 3,然后考虑升级到 Django 2(或 3)。 Django 1.11 也将报废。
-
(我应该指出,继续向基于报废框架的应用程序添加功能,使用报废语言>也是
-
是的,升级到更高版本已经在进行中,但 ETA 仅适用于 8 月。
标签: django python-2.7 python-import