django redirect的几种方式

You can use the redirect() function in a number of ways.

  1. By passing some object; that object’s get_absolute_url() method will be called to figure out the redirect URL:

    from django.shortcuts import redirect
    
    def my_view(request):
        ...
        object = MyModel.objects.get(...)
        return redirect(object)
    

2 .By passing the name of a view and optionally some positional or keyword arguments; the URL will be reverse resolved using the reverse() method:

def my_view(request):
    ...
    return redirect('some-view-name', foo='bar')

3.By passing a hardcoded URL to redirect to:

def my_view(request):
    ...
    return redirect('/some/url/')

This also works with full URLs:

def my_view(request):
    ...
    return redirect('https://example.com/')

By default, redirect() returns a temporary redirect. All of the above forms accept a permanent argument; if set to Truea permanent redirect will be returned:

def my_view(request):
    ...
    object = MyModel.objects.get(...)
    return redirect(object, permanent=True


以上摘自django文档。

大概来说就是有三种方式:

一。 return redirect(absolut_url) 或者相对路径
二。 return redirect(some views)
三。 见http://blog.csdn.net/orangleliu/article/details/38347863 在url conf中更改
另外见:
http://www.yihaomen.com/article/python/327.htm
原文地址:https://www.cnblogs.com/wswang/p/5462769.html