ORM之视图层

1.request对象

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

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

  前台请求的方式,request.method

  post提交的数据,body体的内容,前台会封装成:name=lqz&age=18&sex=1

  request.body

  取出请求的路径,取不到数据部分print(request.path)

  取出请求的路径,能取到数据部分print(request.get_full_path())

  request.META包含了所有的数据

2.JsonResponse对象

1)在没有导入JsonResponse时,要传输json格式的数据,则要在views里导入json模块

def test(request):
    import json
    dic={'name':'lqz','age':18}
    return HttpResponse(json.dumps(dic))
View Code

使用json模块则可以传多种数据类型

2)导入:from django.http import JsonResponse

视图函数中传递json格式数据

def test1(request):
    dic = {'name': 'lqz', 'age': 18}
    return JsonResponse(dic)

默认情况下只能转换字典类型数据,然后进行传输,如果要转换非字典类型,则要添加safe=False

from django.http import JsonResponse
def test1(request):
    ll=['name','age']
    return JsonResponse(ll,safe=False)
View Code

否则则会报错

3.cbv和fbv

cbv基于类的视图

  1)路由层:url(r'^test/',views.Test.as_view()),

  2)视图层

from django.views import View#导入
class Test(View):#写一个类
    def get(self,request):#一定要传request对象
        return HttpResponse('get-test')
    def post(self,request):
        return HttpResponse('post-test')
View Code

fbv基于函数的视图

4.简单文件上传

    

  

 

猜你喜欢

转载自www.cnblogs.com/xufengnian/p/9985472.html
今日推荐