python - 如何修改可重用应用程序的已弃用导入?

标签 python django

我的项目依赖于 OSS 可重用应用程序,该应用程序包含 Django 导入,该导入在 Django 1.10 中已弃用:

从 django.db.models.sql.aggregates 导入聚合

正在更改为:

从 django.db.models.aggregates 导入聚合

我们在 Django 1.9 上收到警告,这在 Django 1.10 上将变成错误。这阻碍了我们的升级,我想为应用程序提供修复,以便我们可以升级。

一种选择是修改 setup.py 中的要求,以便需要 Django 1.10。但我确信我的贡献会被拒绝,因为它会破坏其他人的利益。

为了保持向后兼容性,我可以将导入作为 try/except 进行,但这感觉很糟糕。看来我需要在导入中进行一些 Django 版本检查。我应该进行 Django 版本检查,返回一个字符串,将其转换为 float ,然后执行 if version > x 吗?这也感觉很hacky。

这方面的最佳实践是什么?例子?

最佳答案

Django 有严格的向后兼容性政策。如果它引发弃用警告,则新版本已经可以在 1.9 中运行。您应该在升级之前切换到它。

关于python - 如何修改可重用应用程序的已弃用导入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39907808/

相关文章:

python - Numpy 数组维度的选择

python - Python 与 MySQL 连接时出错

python - 使用 Python 在 .csv 中拆分一行

python - 如何在 Ubuntu 14.04(使用 Unity)中使用 Python 更改桌面墙纸

django - 如何在 Django 中为(基于类的)通用对象列表创建过滤器表单?

django - Celery 与 Django 和 MongoDB (mongoengine)

python - 在 Django 产品中从 Python 2.6 升级到 Python 2.7

python - Django 教程第 4 部分中的 NoReverseMatch 错误

python - 我想计算欧几里德距离并将其放入列表中。我收到范围错误,我缺少什么?

python - pyspark - 使用 OR 条件连接