我想在Django中使用动态网址来匹配模板中的动态href,模板是从地址汇编而来的,如下所示:
../details/0-TIFFANY-CRES ../details/1-Airport-PKY
我是正则表达的外行,我想要匹配的当前网址是:
<pre>
path('details/(?P<addline>[-\w]+)/$', details),
</pre>
它当然没有用。
另外,我想在我的视图中使用网址中的地址,如何将此地址转换为我的新视图功能?
我如何匹配网址?如果有任何不清楚的部分,请告诉我,我会尝试解释更多。
答案 0 :(得分:0)
您必须在Django 2.0中导入regex模块,如:
from django.urls import path, re_path
from . import views
urlpatterns = [
path('articles/2003/', views.special_case_2003),
re_path(r'^articles/(?P<year>[0-9]{4})/$', views.year_archive),
re_path(r'^articles/(?P<year>[0-9]{4})/(?P<month>[0-9]{2})/$', views.month_archive),
re_path(r'^articles/(?P<year>[0-9]{4})/(?P<month>[0-9]{2})/(?P<slug>[\w-]+)/$', views.article_detail),
]
新地址将是您指定的函数或类的名称,在您的情况下path('details/[-\w]', details),
details
是函数,您可以获取具有分配给正则表达式组的名称的参数{{ 1}}在此示例中,正则表达式组名称为re_path(r'^articles/(?P<year>[0-9]{4})/$', views.year_archive),