对于django 2.0,在urls.py中使用path()或url()更好吗?
在django在线课程中,讲师让我们使用该url()
函数调用视图并使用urlpatterns
列表中的正则表达式。我在YouTube上看到了其他示例。例如
from django.contrib import adminfrom django.urls import include
from django.conf.urls import url
urlpatterns = [
path('admin/', admin.site.urls),
url(r'^polls/', include('polls.urls')),
]
#and in polls/urls.py
urlpatterns = [
url(r'^$', views.index, name="index"),
]
但是,在阅读Django教程时,他们path()
改用例如:
from django.urls import pathfrom . import views
urlpatterns = [
path('', views.index, name="index"),
]
此外,正则表达式似乎不适用于该path()
函数,因为使用path(r'^$', views.index, name="index")
将找不到mysite.com/polls/
视图。
是否使用path()
没有正则表达式匹配的正确方法前进?是url()
更强大,但更复杂,所以他们正在使用path()
与开始我们吗?还是针对不同工作使用不同工具的情况?
回答:
从Django文档获取url
url(regex, view, kwargs=None, name=None)
此函数是的别名django.urls.re_path()
。在将来的版本中可能不推荐使用。
path
和之间的主要区别re_path
是path
使用不带正则表达式的路由
你可以re_path
用于复杂的正则表达式调用,也可以仅path用于更简单的查找
以上是 对于django 2.0,在urls.py中使用path()或url()更好吗? 的全部内容, 来源链接: utcz.com/qa/427929.html