django中的几种返回模版的方式

  1. redirect方法-----(重定向)

    # 首先导入redirect方法,
    from django.shortcuts import redirect
    在函数中写一个返回值 return redirect('/index/')  # 重定向 
    # 将/index/路径返回给浏览器
    
  2. render方法相关操作

    name = 'adrian'
    render(request,'home.html',{'name':name}) 
    # render有三个参数,第一个是一个参数request,第二个是一个你需要返回给浏览器的html页面,第三个是一个字典,第三个参数是一个模板渲染的参数,在html页面提交给浏览器之前将html页面中需要替换的字符串进行替换
    
    # 下面是一个html页面的代码,用 {{ 变量 }}  这个变量名就是render方法中的字典中对应的键值对
    <h2>欢迎{{ name }}来到此页面</h2>
    
  3. HttpResponse ------ 给页面返回一个字符串

    return HttpResponse('hello world')
    
  4. JsonResponse:

  5. JsonResponse是HttpResponse的子类,专门用来生成JSON编码的响应

  6. 操作:

    def login(request):
        if request.method == 'GET':
            return render(request,'login.html')
        name = request.POST.get('name')
        pwd = request.POST.get('password')
        # 定义一个字典
        ret_data = {'status':None,'msg':None}    
        if name == 'adrian' and pwd == '123':
            ret_data['status'] = 200     # 向字典中传值
            ret_data['msg']= '登录成功'
        else:
            ret_data['status'] = 400
            ret_data['msg'] = '登录失败'
    
        return JsonResponse(ret_data)  
       # JsonResponse 可以直接将这个字典转化返回给前端的ajax中,
        
     
        list = [1,2]
        return JsonResponse(list,safe=false)
    	# 如果传输的是非字典类型的数据就在里边添加一个参数,safe=false
    
原文地址:https://www.cnblogs.com/zhufanyu/p/11662729.html