• django知识分支_1


    django知识分支

    1.Cookie工作流程:

    浏览器向服务器发出请求,服务器接收到浏览器的请求进行处理,服务器设置一个cookie发送给浏览器,浏览器将cookie保存,当需要再次登录的时候,浏览器将本地的cookie发送给服务器,进行数据交互
    Session工作流程:
    浏览器向服务器发送请求,服务器接收到浏览器的请求进行处理,服务器设置一个session的key值发送给浏览器,浏览器接收到服务器发送的key,保存在cookie中,当需要再次访问服务器的时候,给服务器发送session的key,进行数据交互
    区别:
    安全性-cookie直接保存的数据不安全,因为每次发送请求,都会把request中的信息全部发送出去,而session保存的是一个key值,这就充分的保证了数据的安全性
    性能:将数据保存在cookie可以降低资源的占用,如果将数据保存在session中将会占用大量的资源,造成资源浪费

    2.编写代码完成 一个代码时间消耗装饰器

    	exp: 有方法a,与方法b, 编写装饰器能够实现方法a,方法b的时间开销
    	提交代码
    

    import time
    def x(z):
    def c():
    time.clock()
    z()
    print(time.clock())
    return c
    @x
    def fun1():
    s=0
    for i in range(1,1000):
    return print("/xxx")
    @x
    def fun2():
    s=0
    for i in range(1,1000):
    return print("xqqx")
    fun1()
    fun2()

    3.查看Django源码 说明 HttpResponse,HttpResponseRedirect,JsonResponse 类之间的关系

    HttpResponse:是django的方法,返回格式为HttpResponse(content=响应体,content_type=响应体类型,status=状态码),可以修改返回的数据类型
    HttpResponseRedirect:当post提交数据之后,可以使用HttpResponseRedirect跳转到另一个页面,而不是使用HttpResponse跳转
    JsonResponse:是httpResponse的子类,适用于处理json格式的数据,但是不能返回模板

    4.说明django.shortcuts中简写函数的使用如render,至少5个

    render:快速调用模板
    eg:render(request, 'poll/deatil.html', {"testtitle": testtitle})
    render_to_response:第一个参数必须是要使用的模板名称。如果要给定第二个参数,那么该参数必须是为该模板创建 Context 时所使用的字典。如果不提供第二个参数,render_to_response() 使用一个空字典
    eg:reder_to_response(“模板名字”,{})
    redirect:快速重定向
    eg: redirect(reverse(‘polls:result’, args = (id,) ))
    get_object_or_404:查找对象 如果出异常就返回404页面
    eg:get_object_or_404(模型类名,查找条件)
    get_list_or_404:查找列表 如果出异常就返回404页面
    eg:get_list_or_404(模型类名,查找条件)
    resolve_url:函数resolve,path表示url,作用:从url得到相互映射的url_name
    eg:resolve(to,*args,**kwargs)
    _get_queryset:该方法可以返回一个量身定制的对象列表

    5.编写代码实现通用视图函数View的get与post接口

    一个简单的通用视图函数类
    from django.views. generic import View
    from django.shortcuts import render
    class Index(View):
    def get(self,request,id):
    print(id)
    return render(request, 'polls/index.html', {})
    def post(self,request,id):
    print(id)
    return render(request, 'polls/index.html', {})

  • 相关阅读:
    单表清除重复数据
    调用webApi封装
    简单写入本地日志,日志文件位置与主程序exe位置相同
    APPConfig.XML获取配置文件(主程序和Dll各自的)
    获取当前运行程序上一级目录指定文件夹,没有就创建文件夹
    shell脚本中的单引号和双引号以及反引号详解
    Linux shell中反引号(`)的应用
    关于网页 硬解 软解 H264 HEVC 和你电脑起飞了那点事
    浏览器支持H.265解码总结
    微软、谷歌、亚马逊、Facebook等硅谷大厂91个开源软件盘点(附下载地址)
  • 原文地址:https://www.cnblogs.com/ldsice/p/10948584.html
Copyright © 2020-2023  润新知