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)

 


        

猜你喜欢

转载自www.cnblogs.com/AllenZhou/p/9932722.html
今日推荐