В онлайн-курсе django инструктор предлагает нам использовать url()функцию для вызова представлений и использования регулярных выражений в списке urlpatterns. Я видел другие примеры этого на YouTube. например
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"),
]
Однако, проходя обучение по Django, они path()вместо этого используют, например:
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name="index"),
]
Кроме того, регулярные выражения, похоже, не работают с path()функцией, так как использование path(r'^$', views.index, name="index")не позволяет найти mysite.com/polls/представление.
Является ли использование path()без соответствия регулярному выражению правильным путем? Является url()более мощным , но более сложным , так что они используют , path()чтобы начать нас с? Или это разные инструменты для разных работ?
path()иurl(). Если вы хотите или вам нужно использовать регулярные выражения, вы должны использоватьre_path()илиurl(). Кроме того, я думаю, что действительно вам решать, какой из них вы выберете.