视图函数

一个视图函数,简称视图,是一个简单的python函数。它接收web请求并且返回web响应.
1、一张网页的HTML内容
2、一个重定向
3、一个404错误
4、一个xml文档
5、一个字符串
 def current_time(request):
"""
1、首先,我们从django.shortcuts模块导入了HttpResponse类。以及Python的datetime库
2、然后,定义了current_time函数,这个函数就是视图函数,每个函数都会有第一个参数request,通常称之为request。
视图函数的名称不重要,能反应其功能就ok
3、这个视图函数会返回一个HttpResponse对象。
:param request: request 接收请求
:return: HttpResponse 返回响应
"""
now = datetime.datetime.now()
html = "<html><body>当前时间:%s</body></html>" % now
return HttpResponse(html)
无论视图本身包含什么逻辑,都要返回响应。
视图层,熟练掌握;两个对象即可:请求对象(request)和响应对象

HttpRequest对象

request属性

def index(request):

    # 请求方式
print(request.method) # 最常见的有GET、POST两种 # 请求数据 django的内置数据类型,其实跟python的字典一样,get取值
# 判断是否是POST方法,不能用if request.POST:pass 应该使用if request.method == 'POST':pass
# 还有一些键值对是多个值的时候,比如说checkbox,select标签就要用request.POST.getlist('hobby')来取值
print(request.GET) # <QueryDict: {'name': ['1'], 'age': ['2']}>
print(request.POST) # <QueryDict: {'name': ['111'], 'age': ['222']}> # 请求路径 一个字符串 不包含域名
'''
url:协议://ip:port/路径/?参数
'''
print(request.path) # /index/   
print(request.path_info) # 和path类似。最后使用这个 # 文件
file_obj = request.FILES # request.FILES获取上传文件信息 只有在POST切form带有enctype="multipart/form-data" 的情况下才会
# 包含数据。否则,FILES 将为一个空的类似于字典的对象。
print(file_obj) # 获取文件名称 file_obj.name # request.COOKIES 一个标准的python字典,包含所有的cookie。键值都是字符串 # request.session 一个既可读又可写的类似于字典的对象,表示当前的会话。只有当Django 启用会话的支持时才可用。和cookie一样,都是会话相关 # request.user 用户认证组件下使用,可用来判断用户是否登陆 # 方法
print(request.get_full_path()) # /index/?name=1&age=2 有路径 还有携带的参数
print(request.is_ajax()) # 判断请求方式是否为ajax发起的 bool  
   print(request.get_host()) # 获取用户ip和端口 python = 'Hello Python' # return HttpResponse("<h1 style='color:red'>1314</h1>")
return render(request, 'index.html', {"python": python})

HttpResponse对象

响应对象主要有三种形式:

1、HttpResponse()

2、render()

3、redirect()

HttpResponse()括号内直接跟一个具体的字符串作为响应体,比较直接很简单。所以介绍后两种形式

render

render(request, template_name[, context])

参数:

  request:用于生成响应的请求对象

  template_name:要使用的模版的完整名称,可选

  context:一个字段,添加到模版上下文的字典,视图将在渲染模版之前调用它。

作用:render()就是将一个模版页面的模版语法进行渲染,最终渲染成一个html响应体。

redirect

传递一个重定向的硬编码url 也可以是一个reverse反向解析的url

return redirect('/some/url')

007---Django的视图层的更多相关文章

  1. 03-01 Django之视图层

    Django之视图层 一 视图函数 视图函数,简称视图,属于Django的视图层,默认定义在views.py文件中,是用来处理web请求信息以及返回响应信息的函数,所以研究视图函数只需熟练掌握两个对象 ...

  2. 4、Django之视图层

    一 视图函数 视图函数,简称视图,属于Django的视图层,默认定义在views.py文件中,是用来处理web请求信息以及返回响应信息的函数,所以研究视图函数只需熟练掌握两个对象即可:请求对象(Htt ...

  3. python 全栈开发,Day69(Django的视图层,Django的模板层)

    昨日内容回顾 相关命令: 1 创建项目 django-admin startproject 项目名称 2 创建应用 python manage.py startapp app名称 3 启动项目 pyt ...

  4. Django框架(四) Django之视图层

    视图函数 一个视图函数,简称视图,是一个简单的Python 函数,它接受Web请求并且返回Web响应.响应可以是一张网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一张图片. . ...

  5. 6 Django 的视图层

    视图函数 一个视图函数,简称视图,是一个简单的 Python 函数,它接受 Web 请求并且返回 Web 响应.响应可以是一张网页的 HTML 内容,一个重定向,一个 404 错误,一个 XML 文档 ...

  6. 关于Django的视图层

    视图函数 通俗来讲:视图函数是在url配置是所匹配好了将要调用的对应函数(逻辑代码)        是一个简单的Python 函数,它接受Web请求并且返回Web响应.响应可以是一张网页的HTML内容 ...

  7. 6 Django的视图层

    视图函数 一个视图函数,简称视图,是一个简单的Python 函数,它接受Web请求并且返回Web响应.响应可以是一张网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一张图片. . ...

  8. Django之路——4 Django的视图层

    一个视图函数简称称视图,是一个简单的Python 函数,它接受Web请求并且返回Web响应.响应可以是一张网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一张图片. . . 是任何 ...

  9. Django之视图层

    一.视图函数 一个视图函数,简称视图,是一个简单的python函数,接收web请求并返回web响应.响应可以是一张网页的HTML内容,一个重定向,一个404错误等.在函数中必须写一个request的参 ...

  10. Django 的视图层

    什么是视图: 之前我们也了解了urls路由 那么路由的主要作用是决定你下一步走哪个视图函数 ,视图就是用来存放一个个的函数的python文件,主要存储的函数就是你Django主要的流程的控制 都存放在 ...

随机推荐

  1. The thirteen day

    Well begun is hanlf done 良好的开端是成功的一半.(此句是省略句,Something that is well begun is something that is half ...

  2. JS的函数参数传递为值传递

    function setAge(i) { alert(i);//24 i = 18; alert(i);//18,i的改变不会影响外面的age }; var age = 24; setAge(age) ...

  3. js获取url的参数和值的N种有效方法

    js获取url的参数和值的N种有效方法 function getParameterByName(name) { name = name.replace(/[\[]/, "\\\[" ...

  4. canvas的isPoinInPath API实现交互

  5. Xposed截获 Android手机QQ密码

    0x00 前言 Xposed框架是一款修改系统框架服务的软件,通过它许多功能强大的模块得以实现,且不冲突地同时运作,自从Xposed框架发布以来,安卓手机的可玩性日益激增,最近很闲很蛋疼,研究下截获A ...

  6. Java—常量和变量

    关键字 Java中有特殊用途的词被称为关键字,关键字服务大小写. 标识符 标识符是用于给java程序中的变量.类.方法等命名的符号. 标识符的几条规则: 由字母.数字.下划线(_).美元符号($)组成 ...

  7. PHP文件是什么?如何打开PHP文件?

    在平时我们可能会碰到过php文件,可是很多用户不知道php文件是什么文件?也不知道怎么打开php文件?为了满足一些用户的好奇心,小编现在就给大家讲解php文件以及如何打开php文件的方法. 1.PHP ...

  8. API:什么是API?API与interface的区别

    我们都知道,API就是接口,那是什么鬼呢? 1.什么是API? api接口开发,其实和平时开发逻辑差不多:但是也有略微差异: 平时使用mvc开发网站的思路一般是都 由控制器 去 调用模型,模型返回数据 ...

  9. java 通过接口在后台管理器中生成数据

    需求:测试人员在后台批量添加数据很麻烦,特别是针对一款商品配置了英语,还需要手动添加法语.俄语.阿拉伯语,很麻烦,但是因为没有项目组配合,做个小工具批量生成数据就只有自己去研究了 第一步:通过抓包工具 ...

  10. 2018.9.7 ArrayList

    ArrayList简介 ArrayList核心源码 ArrayList源码分析 System.arraycopy()和Arrays.copyOf()方法 两者联系与区别 ArrayList核心扩容技术 ...