《Python高效开发实战》实战演练——基本视图3
来源:互联网 发布:linux设置ntp客户端 编辑:程序博客网 时间:2024/06/04 19:14
在完成Django项目和应用的建立后,即可以开始编写网站应用代码,这里通过为注册页面显示一个欢迎标题,来演示Django的路由映射功能。
1)首先在djangosite/app/views.py中建立一个路由响应函数:
from django.http import HttpResponse def welcome(request): returnHttpResponse("<h1>Welcome to my tiny twitter!</h1>")
该代码定义了一个函数welcome(),简单地返回一条被HttpResponse()封装的Welcome信息。
2)接下来,要通过URL映射将用户的http访问与该函数绑定起来。
在djangosite/app/目录中新建一个urls.py文件,管理应用app中的所有URL映射,其文件内容为:
from django.conf.urls import urlfrom . import views urlpatterns = [ url(r'',views.welcome),]
在其中第1行引入了django.conf.urls中的url()函数,Django中的所有路由映射由该函数生成。第2行代码引入了djangosite/app/views.py模块。之后定义了关键变量urlpatterns,该变量是一个列表,保存所有由url()函数生成的路由映射。本代码中只设置了一个映射,及把所有路由映射到view.py中的welcome函数。
3)在项目URL文件djangosite/urls.py的urlpatterns中增加一项,声明对应用app中urls.py文件的引用,代码如下:
from django.conf.urls import urlfrom django.contrib import adminfrom django.conf.urls import include #本行新增 urlpatterns = [ url(r'^app/',include('app.urls')), #本行新增 url(r'^admin/', admin.site.urls),]
首先通过import语句引入django.conf.urls.include()函数,之后在urlpatterns列表中增加一个路径’app/’,将其转接到app.urls包,即djangosite/app/urls.py文件。这样,通过include()函数就将两个urlpatterns连接了起来。
注意:url()函数的第1个参数用正则表达式来表达URL路由,本例中’^app/’的含义是“所有以app开头的路由”。
有兴趣的读者可以看看这本书《Python高效开发实战》的结构
- 《Python高效开发实战》实战演练——基本视图3
- 《Python高效开发实战》实战演练——建立应用2
- 《Python高效开发实战》实战演练——内置Web服务器4
- Python开发简单爬虫之实战演练
- Python BeautifulSoup 实战演练
- 读《python 高效开发实战》
- 疯狂java实战演练——五子棋
- Python高效开发实战(web)——Django、Tornado、Flask、Twisted
- Cordys BOP 4平台开发入门实战演练——Webservices开发(初级)
- Cordys BOP 4平台开发入门实战演练——Webservices开发(高级)
- Cordys BOP 4平台开发入门实战演练——HTML/JS界面开发实践
- Cordys BOP 4平台开发入门实战演练——Webservices开发(使用MongoDB数据库)
- Cordys BOP 4平台开发入门实战演练——流程建模开发(BPM)
- Cordys BOP 4平台开发入门实战演练——会签流程建模开发
- Cordys BOP 4平台开发入门实战演练——For Each流程建模开发
- Cordys BOP 4平台开发入门实战演练——Until流程建模开发
- Opentext BPS 平台开发入门实战演练——基于XForm界面开发
- python实现队列---附加实战演练
- WebView---Android与js交互实例
- 2016.12.13重学C语言记录篇--1
- What is a Digital Signature?
- 第十五周 oj训练 字符串分段(串)
- Arcgis Javascript那些事儿(七)--AMD详解
- 《Python高效开发实战》实战演练——基本视图3
- Spring Web Flow入门(带详细注释)
- maven环境变量配置
- Sublime Text 3 安装 Package Control
- 如何执行字符串的PHP代码
- Ajax异步传输的使用
- [Leetcode] 21. Merge Two Sorted Lists 解题报告
- 自学-ShiroFilter的工作原理-03
- 2016年前端面试总结(实习生)