• Django第五天


    1.创建虚拟环境:

      install virtualenv

      virtualenv env_django(创建虚拟环境)

      virtualenv --system-site-packages env_django(创建纯净环境)

      进到目录里,的Script文件夹输入:activate

       退出虚拟环境:deactivate

    2.试图函数:

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

    3.request属性

      request.POST前台POST传过来的数据,包装到POST字典里

      request.GET前台浏览器窗口里携带的数据,包装到GET字典里

      request.body  post提交的数据,body体的内容

      request.path:取出请求的路径,取不到数据

      reques.get_full_path取出请求的路径及数据

      HTTP_REFERER —— Referring 页面,用于反爬

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

    • HttpResponse()
    • render()
    • redirect()

    HttpResponse()括号内直接跟一个具体的字符串作为响应体,比较直接很简单

    RENDER:

    1
    2
    3
    render(request, template_name[, context])
     
    结合一个给定的模板和一个给定的上下文字典,并返回一个渲染后的 HttpResponse 对象。
    参数:
         request: 用于生成响应的请求对象。
    
         template_name:要使用的模板的完整名称,可选的参数
    
         context:添加到模板上下文的一个字典。默认是一个空字典。如果字典中的某个值是可调用的,视图将在渲染模板之前调用它。

    render方法就是将一个模板页面中的模板语法进行渲染,最终渲染成一个html页面作为响应体

    redirect()

    传递要重定向的一个硬编码的URL

    def my_view(request):
        ...
        return redirect('/some/url/')

    也可以是一个完整的URL:

    def my_view(request):
        ...
        return redirect('http://www.baidu.com/') 

     JsonResponse:向前端返回一个json格式字

    CBV基于类的视图(Class base view)和FBV基于函数的视图(Function base view)

    简单文件上传: 

       print(request.FILES)
            print(type(request.FILES.get('file_name')))

            file_name=request.FILES.get('file_name').name
            from django.core.files.uploadedfile import InMemoryUploadedFile
            with open(file_name,'wb')as f:
                for i in request.FILES.get('file_name').chunks():
                    f.write(i)

     


            

  • 相关阅读:
    关于域名备案申请
    meta标签中的http-equiv属性使用介绍
    WDCP3.3中多PHP版本安装方法,以及安装遇到的问题
    模拟《意尔康》网站加载动画效果
    如何提示系统所在的浏览器版本过低?
    Dedecms升级php版本{dede:field.body/}不解析,文章内容不显示
    微信weixin://xxx 分析
    SuperSlide之属性targetCell介绍
    了解JSON Web令牌(JWT)
    如何向这些CA来申请数字证书呢?
  • 原文地址:https://www.cnblogs.com/AllenZhou/p/9932722.html
Copyright © 2020-2023  润新知