django-URL重定向(八)

时间:2022-07-23
本文章向大家介绍django-URL重定向(八),主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

HttpResponseRedirect()不常用

redirect(to,permanent=False,*args,**kwargs)

to:指重定向的位置,可以是视图,也可以是url地址,也可以是一个模块。permanent默认值是False,代表是否永久重定向。

(*args,**kwargs在我其它博客中有讲)

book/views.py

from django.http import HttpResponse
from django.shortcuts import render,redirect

# Create your views here.
def index(request):
    username = request.GET.get("username")
    if username is not None:
        return HttpResponse("welcome!")
    else:
        return redirect('loose')

def error(request):
    return HttpResponse("<h1>你走丢了</h1>")

book/urls.py

from django.urls import path
from . import views

urlpatterns = [
    path('', views.index,name='index'),
    path('error/', views.error,name='loose'),
]

启动服务器后会自动重定向到error界面:

我们在浏览器传入username参数,即http://127.0.0.1:8000/?username=gong