您的当前位置:首页在Django的URLconf中使用多个视图前缀的方法

在Django的URLconf中使用多个视图前缀的方法

2020-11-27 来源:小侦探旅游网

在实践中,如果你使用字符串技术,特别是当你的 URLconf 中没有一个公共前缀时,你最终可能混合视图。 然而,你仍然可以利用视图前缀的简便方式来减少重复。 只要增加多个 patterns() 对象,象这样:

旧的:

from django.conf.urls.defaults import *

urlpatterns = patterns('',
 (r'^hello/$', 'mysite.views.hello'),
 (r'^time/$', 'mysite.views.current_datetime'),
 (r'^time/plus/(d{1,2})/$', 'mysite.views.hours_ahead'),
 (r'^tag/(w+)/$', 'weblog.views.tag'),
)

新的:

from django.conf.urls.defaults import *

urlpatterns = patterns('mysite.views',
 (r'^hello/$', 'hello'),
 (r'^time/$', 'current_datetime'),
 (r'^time/plus/(d{1,2})/$', 'hours_ahead'),
)

urlpatterns += patterns('weblog.views',
 (r'^tag/(w+)/$', 'tag'),
)

整个框架关注的是存在一个名为 urlpatterns 的模块级别的变量。如上例,这个变量可以动态生成。 这里我们要特别说明一下,patterns()返回的对象是可相加的,这个特性可能是大家没有想到的。

显示全文