在Django 1.7中,我如何创建只有一个 url正则表达式,其匹配所有 3以下模板:
- /页/
- / page / {two characters} /
- /page.html
醇>
非常感谢。
答案 0 :(得分:2)
试试这个
from django.views.generic import TemplateView
urlpatterns = patterns('',
url(r'^page/$', yourviews.page),
url(r'^page/(\w{2})/$', yourviews.page_detail),
url(r'^page.html$', TemplateView.as_view(template_name="page.html")),
)
更新:我为TemplateView
添加了page.html
,因此您无需为其编写视图。这是Django的美女之一。
答案 1 :(得分:1)
urls.py
url(r'^page/$', views.page),
url(r'^page/(\w{2})/$', views.page),
url(r'^page\\.html$', views.page),
views.py
def page(request, two_chars=''):
# ...
请参阅this doc link。
答案 2 :(得分:1)
怎么样
url(r'^/page(\/\w{2}\/|\/|\.html)$', yourview)