Em um curso on-line de django, o instrutor usa a url()
função para chamar visualizações e utilizar expressões regulares na lista de padrões de URL. Eu já vi outros exemplos no youtube disso. por exemplo
from django.contrib import admin
from 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"),
]
No entanto, ao seguir o tutorial do Django, eles usam, path()
por exemplo:
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name="index"),
]
Além disso, expressões regulares não parecem funcionar com a path()
função, pois usar a path(r'^$', views.index, name="index")
não encontrará a mysite.com/polls/
visualização.
O uso path()
sem regex corresponde à maneira correta daqui para frente? É url()
mais poderoso, mas mais complicado, então eles estão usando path()
para começar? Ou é um caso de ferramentas diferentes para trabalhos diferentes?
path()
eurl()
. Se você deseja ou precisa usar expressões regulares, deve usarre_path()
ouurl()
. Além disso, acho que é realmente você quem escolhe.