Django 2.0 的路由如何实现正则表达式
在django2.0的路由系统中,摒弃了1.x中的url,而改用path。需要导入path。
from django.urls import path,re_path
在1.x中,使用url()即可实现正则匹配,但是在2.0中,是否使用正则需要使用不同的方式。
path()无法使用正则;re_path()可以使用正则。
from django.urls import include, re_path urlpatterns = [ re_path(r'^index/$', views.index, name='index'), re_path(r'^bio/(?P<username>\w+)/$', views.bio, name='bio'), re_path(r'^weblog/', include('blog.urls')), ... ]
在上面这段代码中,讲讲第二个re_path,使用正则匹配的那部分字符串封装到了“username”,在后台的bio()函数中,必须带上这个参数,即bio(request,username).