Django 中的 url() 函数已被弃用 - 我需要更改源代码吗?

问题描述 投票:0回答:1

django 中的 url() 函数自 3.1 版本起已被弃用。以下是如何处理向后兼容性;

def url(regex, view, kwargs=None, name=None):
    warnings.warn(
        'django.conf.urls.url() is deprecated in favor of '
        'django.urls.re_path().',
        RemovedInDjango40Warning,
        stacklevel=2,
    )
    return re_path(regex, view, kwargs, name)

目前,当调用 url() 函数时,会返回 re_path()。当该功能完全删除后,使用该功能的项目是否需要更改其源代码?

python django deprecated
1个回答
9
投票

使用它的项目是否必须更改其源代码?

是的,如果升级到

url
将不再可用。

通常,如果某些东西被标记为已弃用,则会在两个版本后删除它,因此在 中,因为在 之后,将发布 。如果您有一个活跃的项目,您最终将升级到 Django-4.0 或更高版本,因此应该使用

re_path(…)
 [Django-doc] 来代替。

因此,我们的想法是让用户有时间相应地调整代码,并保持应用程序运行。但最终应该修复弃用警告,因为大约 16 个月后,它在最新的 Django 版本中被删除。

© www.soinside.com 2019 - 2024. All rights reserved.