zoukankan      html  css  js  c++  java
  • 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', {})

  • 相关阅读:
    0802作业1替换文本文件内容

    看病
    爬山
    作业1
    超市(未完成)
    图片复制
    替换
    文件
    英文字母和中文汉字在不同字符集编码下的字节数
  • 原文地址:https://www.cnblogs.com/ldsice/p/10948584.html
Copyright © 2011-2022 走看看