django url中的正则表达式

时间:2014-11-20 20:13:54

标签: django

在Django 1.7中,我如何创建只有一个 url正则表达式,其匹配所有 3以下模板:

  
      
  1. /页/
  2.   
  3. / page / {two characters} /
  4.   
  5. /page.html
  6.   

非常感谢。

3 个答案:

答案 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)