django-URL与视图配置

django的项目结构:使用django-admin startproject firstproject创建一个新的mysite项目

firstproject/

  manage.py

  mysite/

    __init__.py

    settings.py

    urls.py

    wsgi.py

这是第一次创建django项目会得到的项目结构。在以前学习的时候未注意到的URL与视图的细节记录一下:

第一点: 在urls.py 文件中会给自己写的视图函数配置上URL,这样使用http链接就能访问对应的函数。如下:

urlpatterns = [

  url(r'^hello/$',hello)     #我们的视图函数就是hello

]

url这行代码放到urlpatterns其实是一个模式匹配其中  'r'告诉Python 不需要解释 反斜线   而^的意思是匹配以hello开头的所有字符串 而$是匹配以hello/结尾的所有字符串

如果请求的是/hello 在django中,如果url匹配不到任何模式,而且末尾没有反斜线则会自动补上

第二点:动态的URL 比如/book/121 , /book/123 这类的url在原来的bookurl上有请求的偏移量 依然使用在模式匹配中使用正则表达式

url(r'^book/plus/d+$',book)   ---> url(r'^book/plus/(d+)$',book)       这就是动态的url,用括号括起来,在写视图函数时,就在httprequest参数基础多了一个参数我们可以接收后面跟着的121 或者123 这类偏移量的参数

原文地址:https://www.cnblogs.com/xierunfang/p/10051437.html