Django 的 slug url 正则匹配
Posted sea-stream
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Django 的 slug url 正则匹配相关的知识,希望对你有一定的参考价值。
如果按照 .*
去匹配,最后会把 /edit/
和 /delete/
也匹配进去。
urlpatterns = [ #... url(r‘^(?P<slug>.*)/$‘, post_detail, name=‘detail‘), url(r‘^(?P<slug>.*)/edit/$‘, post_update, name=‘update‘), url(r‘^(?P<slug>.*)/delete/$‘, post_delete), ]
所以使用 [-\\w+]
表示匹配 -
符号(短横线 hyphen),以及所有小写的英文字母。
urlpatterns = [ #... url(r‘^(?P<slug>[-\\w]+)/$‘, post_detail, name=‘detail‘), url(r‘^(?P<slug>[-\\w]+)/edit/$‘, post_update, name=‘update‘), url(r‘^(?P<slug>[-\\w]+)/delete/$‘, post_delete), ]
参考:
https://www.jianshu.com/p/8207b66db9ca
https://www.cnblogs.com/yang-wei/p/9997776.html
以上是关于Django 的 slug url 正则匹配的主要内容,如果未能解决你的问题,请参考以下文章