《Python高效开发实战》实战演练——基本视图3
在完成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 url
from . 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 url
from django.contrib import admin
from 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高效开发实战》实战演练——内置Web服务器4
<Python高效开发实战>实战演练——开发Django站点1 <Python高效开发实战>实战演练——建立应用2 <Python高效开发实战>实战演练——基本视图 ...
- 《Python高效开发实战》实战演练——建立应用2
为了在项目中开发符合MVC架构的实际应用程序,需要在项目中建立Django应用.每个Django项目可以包含多个Django应用.建立应用的语法为: #python manage.pystartapp ...
- 《Python高效开发实战》实战演练——开发Django站点1
6.2 实战演练:开发Django站点 用Django开发网站需要遵循Django的一套开发流程.本节通过建立一个消息录入页面演示Django的开发流程及相关技术. 6.12.1 建立项目 在进行D ...
- Python高效开发实战——Django、Tornado、Flask、Twisted
今天要推荐的就是这本书,内容涉及四种主流的Python Web开发框架,零基础完成网站搭建.数据库设计.前后端开发,全方位领悟Python原理与应用. 最新最全的框架实战,尽在这本书,可搜索亚马逊.京 ...
- CSS高效开发实战:CSS 3、LESS、SASS、Bootstrap、Foundation --读书笔记(1)设定背景图
技术的新发展,除计算机可以接入互联网之外,平板电脑.智能手机.智能电视等其他设备均可访问互联网.在多设备时代,构建多屏体验也不是听说的那么难. 但是这也增加了学习CSS的难度?不知道如何上手,只懂一点 ...
- 《Python Web开发实战》|百度网盘免费下载|Python Web开发
<Python Web开发实战>|百度网盘免费下载|Python Web开发 提取码:rnz4 内容简介 这本书涵盖了Web开发的方方面面,可以分为如下部分: 1. 使用最新的Flask ...
- 《自动化平台测试开发-Python测试开发实战》新书出版了
首先 第一本书,当初在百度阅读初步写了个电子版,刚一上线不久即收到了数百位读者朋友阅读收藏购买,于是顺利成章就出版了纸质书. <软件自动化测试开发>认真看过的读者应该都知道,介绍的主要是自 ...
- python 脚本开发实战-当当亚马逊图书采集器转淘宝数据包
开发环境python2.7.9 os:win-xp exe打包工具pyinstaller 界面tkinter ============================================= ...
- 就来推荐一本2018年研究的Web书《移动Web前端高效开发实战》
一线互联网公司Web前端团队实战经验总结,涵盖移动Web前端开发各个关键技术环节,包括移动开发核心技术.常用布局方案.MV*类新时代框架.预编译技术.性能优化.开发调试.混合式应用.单元测试.工程化等
随机推荐
- Python + winpcap抓包和发包
winpcapy Python的winpcapy库可以简单地实现收发Layer2层(数据链路层,以太网)数据. winpcapy主页:https://github.com/orweis/winpcap ...
- 8、泛型程序设计与c++标准模板库5.函数对象
1.函数对象 函数对象是STL提供的第四类主要组件,它使得STL的应用更加灵活方便,从而增强了算法的通用性.大多数STL算法可以用一个函数对象作为参数.所谓“函数对象”其实就是一个行为类似函数的对象, ...
- 6.1 安装Ubuntu
声明:sunny从来没有接触过linux.今天是第一次接触linux,日后每天都会接触linux了.坚持,每日练习,相信毕业后的我,一定会从小白成为linux大神. 安装Ubuntu之前,请先参考该博 ...
- Linux操作系统的内存使用方法详细解析
我是一名程序员,那么我在这里以一个程序员的角度来讲解Linux内存的使用. 一提到内存管理,我们头脑中闪出的两个概念,就是虚拟内存,与物理内存.这两个概念主要来自于linux内核的支持. Linux在 ...
- KONG 安装 (在 CentOS 7 中)
1. 下载安装包: https://bintray.com/kong/kong-community-edition-rpm/download_file?file_path=centos/7/kong ...
- 深入理解C/C++ [Deep C (and C++)]
编程是困难的,正确的使用C/C++编程尤其困难.确实,不管是C还是C++,很难看到那种良好定义并且编写规范的代码.为什么专业的程序员写出这样的代码?因为绝大部分程序员都没有深刻的理解他们所使用的语言. ...
- kuangbin专题十二 HDU1029 Ignatius and the Princess IV (水题)
Ignatius and the Princess IV Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32767 K ( ...
- BZOJ 2462 [BeiJing2011]矩阵模板 矩阵哈希
昨天卡了一天常数...然后发现吧$unsigned\space long\space long$改成$unsigned$就可以过了$qwq$ 先把每一行的前缀哈希求出,然后再竖着把每个前缀哈希值哈希起 ...
- NetworkUtils
import java.io.IOException; import javax.servlet.http.HttpServletRequest; import org.apache.log4j.Lo ...
- Maven_setting.xml
<?xml version="1.0" encoding="UTF-8"?> <!-- Licensed to the Apache Soft ...