Django中的url函数已被弃用-是否需要更改源代码?

问题描述

自3.1版以来,django中的

The url() function已被弃用。这是向后兼容的处理方式;

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,kwargs,name)

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

解决方法

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

,如果它们升级到,则url将不再可用。

通常,如果某些内容被标记为已弃用,则会在两个版本之后将其删除,因此在中,因为在之后,将被释放。如果您因此拥有一个活跃的项目,则最终您将升级到Django-4.0或更高版本,因此应改用re_path(…) [Django-doc]

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

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...