Django Url设计 小知识点

mysite/news/urls.py:

from django.conf.urls import url

from . import views

urlpatterns = [
    url(r‘^articles/([0-9]{4})/$‘, views.year_archive),
    url(r‘^articles/([0-9]{4})/([0-9]{2})/$‘, views.month_archive),
    url(r‘^articles/([0-9]{4})/([0-9]{2})/([0-9]+)/$‘, views.article_detail),
]

上面的代码将URLs映射作为简单的正则表达式映射到Python的回调函数(视图)。正则表达式通过圆括号来“捕获”URLs中的值。 当一个用户请求一个页面时,Django将按照顺序去匹配每一个模式,并停在第一个匹配请求的URL上。 (如果没有匹配到, Django将调用一个特殊的404视图。)整个过程是极快的,因为正则表达式在加载时编译。

一旦有一个正则表达式匹配上了,Django 将导入和调用对应的视图,它其实就是一个简单的Python函数。 每个视图将得到一个request对象 —— 它包含了request 的meta信息 —— 和正则表达式所捕获到的值。

例如,如果一个用户请求了URL “/articles/2005/05/39323/”,Django将调用函数news.views.article_detail(request, ‘2005‘,‘05‘, ‘39323‘)

news.views.py中:

def article_detail(request,year, month, number):

  ......

调用“/articles/2005/05/39323/?day=Monday”, 参数与值得对应关系:

request.GET[‘day‘] == ‘Monday‘

year == 2005

month == 05

number == 39323

时间: 2024-10-21 00:58:45

Django Url设计 小知识点的相关文章

小知识点日志(2014-10-22~2015-4-7)

上一篇 小知识点日志(2013-6-24~2014-10-11) 2014-10-22 17:51:46 1.函数命名:使用 LayerObjectOperation的命名方法,例如SlotFileRead.如果是面向对象的,通常是Layer字段在类名里表示了,而ObjectOperation通常表示成OperationObject,例如" CSlot slot; slot.readFile(); " 2.svn bug 3.mac实用工具:dash alfred 4.xcode Pe

post提交与get提交的一个小知识点

今天偶然发现post提交与get提交的一个小知识点,记下来以后可以看看. 将form表单的method的设置为get后,通过url传递的参数将不会被传递到服务器,例如1.ashx?a=123,的a=123在后台就读不出来: 但是如果将method设置为post后,在后台仍然可以读到a=123. post提交与get提交的一个小知识点

java-web 小知识点

动态部署文件,修改web代码能够及时响应,并且tomcat在启动的时候要点击的按钮是debug的那个按钮 <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> <Context path="" reloadable="true" docBase="D:\apa

Django UrL 解析

Django的路由系统 URLconf 本质是URL与要为该URL调用的视图函数之间的映射表:你就是以这种方式告诉Django,对于客户端发来的某个URL调用哪一段逻辑代码对应执行. 1.1 django版本2.0以下的url配置 from django.conf.urls import url # 支持正则匹配 from . import views urlpatterns = [ url(r'^articles/2003/$', views.special_case_2003), url(r

web前端小知识点

写在前面: 该篇是个人平时对web前端小知识点的总结,会不定时更新...... 如有错误,敬请批评指正. 正文: 1.WWW是World Wide Web的缩写. 2.HTML(Hyper Text Markup Language)是用于描述网页文档的超文档标记性语言. 3.Web主要包括超文本传输协议(HTTP).统一资源定位符(URL)以及超文本标记语言HTML组成. 4.HTTP是客户端和服务器端信息交互的网络协议. 5.URL是网络上的资源的唯一标识符,俗称网址. 6.文本.图像.超级链

记录神经网络中一些小知识点

记录神经网络中一些小知识点 1 Caffe中的blob维度 Caffe中的blob具有4个维度,分别是num,channel,width和height: 其中我们在定义各个网络层时,常用到的一个参数numout,就是指定的channel: 比如说,维度为1*3*5*5的数据输入网络(即每次输入一张5*5大小的3通道图),经过一个stride为2,pad为1,kernel为2,numout为2的卷积层后,维度就变成了1*2*3*3: 假如输入有n个通道,计算时,caffe就会对应产生n个filte

C++ 小知识点 WINAPI

int WINAPI WINMain 中,WINAPI含义 网友给出回答:在windef.h头文件中有如下定义#define WINAPI      __stdcall#define APIENTRY    WINAPIVC有两种函数调用方式 一种是__stdcall,另一种是__cdecl函数的调用方式有两种一种是PASCAL调用方式,另一种是C调用方式使用PASCAL调用方式,函数在返回到调用者之前将参数从栈中删除使用C调用方式,参数的删除是调用者完成的WinMain函数是由系统调用的,Wi

0607am抽象类&amp;接口&amp;析构方法&amp;tostring&amp;小知识点

/*class ren{ public static $color;//静态 static function () { ren::$color; self::$color;//self只能写在类里面,代表这分类 }} */ //不能实例化的类:抽象类abstract class Animal //关键字abstract{ public $dong; public $jiao; function chi() { } function shui() { }}class Ren extends Ani

初学MySQL中的一些小知识点

写在前面,小弟初用博客记录学习路上的一点点小知识点,其中可能有个人理解方面的误差,或不明白的地方.希望各位大牛纠正指导,小弟感激不尽!这并不是什么帮助别人解决问题的文章,只是小弟将学习到的内容一一写在博客上,这样方便以后复习,还恳请大家勿喷.. 一.进入MySQL客户端 1.客户端可以通过.../MySQL/bin目录下的sql.exe运行客户端. 1.1:访问方式一: -u root -p /*可以直接在这段代码的后面添加密码,也可以按回车后再输入密码*/ 1.1:访问方式二: --host