Tec*_*ins 4 python django deprecated
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)
Run Code Online (Sandbox Code Playgroud)
现在,当调用 url() 函数时返回 re_path()。当该功能完全删除后,使用它的项目是否必须更改其源代码?
使用它的项目是否必须更改其源代码?
是的,如果他们升级到django-4.0,url将不再可用。
通常,如果某些内容被标记为已弃用,则会在两个版本之后将其删除,因此在django-4.0 中,因为在django-3.2 之后,将发布django-4.0。如果您因此有一个活动项目,您最终将升级到 Django-4.0 或更高版本,因此应改用re_path(…)[Django-doc]。
因此,这个想法是让用户有时间相应地调整代码,并保持应用程序运行。但是最终应该修复弃用警告,因为大约 16 个月后,它在最新的 Django 版本中被删除。