首页 > 其他 > 详细

Django--视图views

时间:2019-09-23 09:09:58      阅读:74      评论:0      收藏:0      [点我收藏+]

1、什么是视图?

  视图函数,简称视图,是一个简单的Python 函数,它接受Web请求并且返回Web响应。响应可以是一张网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一张图片. . . 是任何东西都可以。无论视图本身包含什么逻辑,都要返回响应。代码写在哪里也无所谓,只要它在你的Python目录下面。除此之外没有更多的要求了——可以说“没有什么神奇的地方”。为了将代码放在某处,约定是将视图放置在项目或应用程序目录中的名为views.py的文件中。

  视图函数如图所示:

from django.shortcuts import render, HttpResponse, redirect

# Create your views here.

def index(request):
    import datetime
    now = datetime.datetime.now()
    ctime = now.strftime(%y-%m-%d,%X)
    return render(request, "index.html", {"ctime": ctime})

  如图,index函数就是一个视图函数,他的参数必须有request,必须返回一个HttpResponse对象。视图函数的函数名不需要统一,只需要表达出函数的功能即可。

2、HttpRequest请求对象

  常用方法:

  request.method:输出请求方式

  request.path:输出路径

  request.POST:POST请求数据

  request.GET:get请求数据

  request.META:请求头

  request.get_full_path()拿路径也取参数

3、HttpResponse响应对象

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

  HttpResponse()

  render()

  redirect()

  HttpResponse就是在括号里加上需要响应的字符串即可,这里主要说另外两种。

4、render()

  结合一个给定的模版和上下文字典,返回一个渲染后的HttpResponse对象。

  有两种功能:1、读取文件字符串

  

def index(request):
    
    return render(request, index.html

  2、嵌入变量

  views中的代码如同所示:

def index(request):     
    
    shangping_list = [苹果, 香蕉, 西瓜]
    name = qqq
    return render(request, index.html, {sp: shangping_list, name: name})

  即在后面加上以一个字典

  模版如图所示:

<body>
    用户:{{ name }}
    <h2>商品信息</h2>

<ul>

    {% for foo in sp %}
        <li>{{ foo }}</li>
    {% endfor %}

</ul>


</body>

  这样就可以在页面上通过字典中的键将数据传上来。以及循环取出序列中元素的方法。

  页面如下所示:  

用户:qqq
商品信息
苹果
香蕉
西瓜

 

  

  

 

Django--视图views

原文:https://www.cnblogs.com/490144243msq/p/11570092.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!