《玩转Django2.0》读书笔记-探究视图
作者:尹正杰
版权声明:原创作品,谢绝转载!否则将追究法律责任。
视图(View)是Django的MTV架构模式的V部分,主要负责处理用户请求和生成相应的响应内容,然后在页面或其他类型文档中显示。也可以理解为视图是MVC架构里面的C部分(控制器),主要处理功能和业务上的逻辑。
一.构建网页内容
1>.视图函数的retrurn的多种响应类型
在上一个篇博客里我们看到视图函数都是通过return方式返回数据内容的,然后生成响应的网页内容呈现在浏览器上。而视图函数的retrurn具有多种响应类型,如下所示:
2>.使用django.http模板实现文件下载案例
响应类型代表HTTP状态吗,其核心作用是Web Server服务器用来告诉客户端当前的网页请求发生了什么事,或者当前Web服务器的响应状态。上述响应主要来自模板django.http,该模块是实现响应功能的核心。在实际开发中,可以使用该模板实现文件下载功能,在index的urls.py和views.py中分别添加以下代码:
#!/usr/bin/env python3 #_*_coding:utf-8_*_ #@author :yinzhengjie #blog:http://www.cnblogs.com/yinzhengjie/tag/python%E8%87%AA%E5%8A%A8%E5%8C%96%E8%BF%90%E7%BB%B4%E4%B9%8B%E8%B7%AF/ #EMAIL:y1053419035@qq.com from django.urls import path,re_path #导入URL编写模块,path只是普通的URL定义,而re_path则支持正则表达式 from . import views #导入当前目录(该文件存放的同一目录)下的views.py文件 ''' urlpatterns: 整个项目的URL集合,每个元素代表一条URL信息。 path('', views.index): URL为空,代表为网站的域名,即“http://127.0.0.1:8000/”,通常是网站的首页;还寄给上面我们导入了“views”这个文件吗? 该文件用于编写视图函数,处理URL请求信息并返回网页给用户。“views.index”表示我们调用了views文件中的index函数(换句话说,当 用户访问首页是,就会触发“views.index”函数的执行)。因此我们在这里指定后,需要在“views”这个文件里编写对应的“index”函数。 path('download.html',views.download): 当用户在浏览器输入:“http://127.0.0.1:8000/download.html”,就会调用views.download函数。 ''' urlpatterns = [ path('', views.index), path('download.html',views.download) ]