转发和重定向(python)

版权声明:本文为博主原创文章,未经允许不得转载。 https://blog.csdn.net/wem603947175/article/details/83018167

转发和重定向


转发:只有一次请求和响应

重定向:两对以上的请求和响应

在这里插入图片描述


使用:

render

render(request, template_name[, context])
结合一个给定的模板和一个给定的上下文字典,并返回一个渲染后的HttpResponse对象
request:该request用于生成response
template_name:要使用的模板的完整名称
context:添加到模板上下文的一个字典,视图将在渲染模板之前调用它

from django.shortcuts import render

def index(request):
    return render(request, 'booktest/index.html', {'h1': 'hello'})

redirect

redirect(to)
为传递进来的参数返回HttpResponseRedirect
to推荐使用反向解析

from django.shortcuts import redirect
from django.core.urlresolvers import reverse

def index(request):
    return redirect(reverse('booktest:index2'))

注意:
 redirect(reverse(-----这里面写的是一个url ------))

在这里插入图片描述


下面这两个代码的结果一样
        return redirect(reverse('user:login'))
        return render(request,"login.html")

猜你喜欢

转载自blog.csdn.net/wem603947175/article/details/83018167