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

yipeiwu_com6年前Python基础

在实践中,如果你使用字符串技术,特别是当你的 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()返回的对象是可相加的,这个特性可能是大家没有想到的。

相关文章

python获取各操作系统硬件信息的方法

本文实例讲述了python获取各操作系统硬件信息的方法。分享给大家供大家参考。具体如下: 1. windows 使用WMI: (WMI官网地址:http://pypi.python.or...

python在命令行下使用google翻译(带语音)

说明1. 使用google翻译服务获得翻译和语音;2. 使用mplayer播放获得的声音文件,因此,如果要播放语音,请确保PATH中能够找到mplayer程序,如果没有mplayer,请...

Python Django框架单元测试之文件上传测试示例

Python Django框架单元测试之文件上传测试示例

本文实例讲述了Python Django框架单元测试之文件上传测试。分享给大家供大家参考,具体如下: Submitting files is a special case. To POS...

python控制windows剪贴板,向剪贴板中写入图片的实例

如下所示: from ctypes import * import os import win32con,win32clipboard aString=windll.user32....

python写入xml文件的方法

本文实例讲述了python写入xml文件的方法。分享给大家供大家参考。具体分析如下: 本范例通过xml模块对xml文件进行写入操作 from xml.dom.minidom impo...