zoukankan      html  css  js  c++  java
  • Django 视图初识

    视图负责接受Web请求HttpRequest,进行逻辑处理,返回Web响应HttpResponse给请求者

    - 在game应用下创建一个名字为urls.py的文件

    from django.contrib import admin
    from django.urls import path, include
    from . import views
    
    urlpatterns = [
        path('', views.index),
    

    - 在项目的urls.py包含应用urls.py

    from django.contrib import admin
    from django.urls import path, include
    
    urlpatterns = [
        path('admin/', admin.site.urls),
        path('', include('game.urls')),
    ]


    在game应用下面的views.py中定义视图函数index:

    from django.http import HttpResponse
    
    def index(request):
        return HttpResponse('好一朵美丽的美丽的茉莉花')

     HttpRequest对象
    当客户端像服务器发起一个请求后,会创建一个名为HttpRequest对象。视图中的第一个参数必须是HttpRequest对象。

    属性
    - path:一个字符串,表示请求的页面的完整路径,不包含域名和参数部分。
    - method:一个字符串,表示请求使用的HTTP方法,常用值包括:'GET'、'POST'。
        - 在浏览器中给出地址发出请求采用get方式,如超链接。
        - 在浏览器中点击表单的提交按钮发起请求,如果表单的method设置为post则为post请求。
    - encoding:一个字符串,表示提交的数据的编码方式。
        - 如果为None则表示使用浏览器的默认设置,一般为utf-8。
        - 这个属性是可写的,可以通过修改它来修改访问表单数据使用的编码,接下来对属性的任何访问将使用新的encoding值。
    - GET:QueryDict类型对象,类似于字典,包含get请求方式的所有参数。
    - POST:QueryDict类型对象,类似于字典,包含post请求方式的所有参数。
    - FILES:一个类似于字典的对象,包含所有的上传文件。
    - COOKIES:一个标准的Python字典,包含所有的cookie,键和值都为字符串。
    - session:一个既可读又可写的类似于字典的对象,表示当前的会话,只有当Django 启用会话的支持时才可用

    HttpResponse对象
    当视图接到请求后,会做一些业务处理,然后返回HttpResponse对象。

    属性
    - content:表示返回的内容。
    - charset:表示response采用的编码字符集,默认为utf-8。
    - status_code:返回的HTTP响应状态码。
    - content-type:指定返回数据的的MIME类型,默认为'text/html'。

    ## 方法
    - _init_:创建HttpResponse对象后完成返回内容的初始化。
    - set_cookie:设置Cookie信息。

    - cookie是网站以键值对格式存储在浏览器中的一段纯文本信息,用于实现用户跟踪。
        - max_age是一个整数,表示在指定秒数后过期。
        - expires是一个datetime或timedelta对象,会话将在这个指定的日期/时间过期。
        - max_age与expires二选一。
        - 如果不指定过期时间,在关闭浏览器时cookie会过期。
    - delete_cookie(key):删除指定的key的Cookie,如果key不存在则什么也不发生。
    - write:向响应体中写数据。

    ## 特点
    - Cookie以键值对的格式进行信息的存储。
    - Cookie基于域名安全,不同域名的Cookie是不能互相访问的,如访问sina.cn时向浏览器中写了- Cookie信息,使用同一浏览器访问baidu.com时,无法访问到sina.cn写的Cookie信息。
    - 当浏览器请求某网站时,会将浏览器存储的跟网站相关的所有Cookie信息提交给网站服务器

  • 相关阅读:
    find命令的高级用法之print0及depth
    shell中的单引号和双引号的区别
    基于apache的虚拟主机
    duilib禁止標題欄雙擊放大窗口
    sqlite查询问题,由字母大小写敏感引起
    问题记录,Release模式和Debug运行效果不一样,Release必须加延时
    子函数内malloc分配内存,论如何改变指针参数所指内存,二级指针、三级指针的应用
    如何具体分配一大块堆内存中的各个部分、如何指针转化为地址、如何求指针间地址偏移量(谈谈最近遇到的一个坑爹的接口需求)
    C++ GUID和string转化函数【转载】
    第一次做C++项目的一点小总结
  • 原文地址:https://www.cnblogs.com/tingxin/p/12933871.html
Copyright © 2011-2022 走看看