In un corso online di django, l'istruttore ci fa usare la url()
funzione per chiamare le viste e utilizzare le espressioni regolari nell'elenco degli URL. Ho visto altri esempi su YouTube di questo. per esempio
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"),
]
Tuttavia, durante l'esercitazione di Django, usano path()
invece ad esempio:
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name="index"),
]
Inoltre, le espressioni regolari non sembrano funzionare con la path()
funzione poiché l'uso di a path(r'^$', views.index, name="index")
non trova la mysite.com/polls/
vista.
L'uso path()
senza regex corrisponde al modo corretto di andare avanti? È url()
più potente ma più complicato, quindi lo usano path()
per iniziare? O è un caso di strumenti diversi per diversi lavori?
path()
e aurl()
. Se vuoi o hai bisogno di usare regex, allora devi usarere_path()
ourl()
. Oltre a ciò, penso che dipenda da te quale scegli.