В онлайн-курсе 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()
. Кроме того, я думаю, что действительно вам решать, какой из них вы выберете.