时间:2021-05-22
当请求访问到某个视图时,我们想让它重定向到其他页面,应该怎么做呢?
1.HttpResponseRedirect
需求:当我们访问127.0.0.1/my_redirect时跳到127.0.0.1/user/index
注意:要注册相应的url
def my_redirect(request): return HttpResponseRedirect('/user/index')2.redirect
需求:同上
def my_redirect(request): return redirect('/user/index')3.reversr函数动态生成url地址,解决硬编码维护麻烦的问题(用得较少)
如果你写的视图函数,有一大堆都是重定向到127.0.0.1/user/index的。
那么当你想要改一下它的重定向地址时,让他重定向到127.0.0.1/user/abc。就要一个一个视图函数修改了。这样维护起来是不是特别的麻烦?reverse函数自动生成url地址就可以解决这个问题啦。
(1)当我们在项目的urls.py文件和应用的urls.py文件都设置了url。
项目中的urls.py:
url(r'^user/',include("user.urls",namespace="user")),url(r'^my_redirect',views.my_redirect)应用的urls.py:
url(r'^index$',views.index,name="index")视图:
# 重定向def my_redirect(request): url=reverse("user:index") # 先写namespace的值,再写name的值! return redirect(url)现在的情形是访问127.0.0.1/my_redirect,直接重定向到127.0.0.1/user/index。
如果想重定向到127.0.0.1/user/abc的话,直接修改应用的urls.py为:
url(r'^abc$',views.my_redirect,name="index")如果想重定向到127.0.0.1/abc/index的话,直接修改项目的urls.py为:
url(r'^abc/',include("user.urls",namespace="user"))(2)当我们只在项目的urls.py设置了url。
项目中的urls.py:
url(r'^index',views.index,name="index"),url(r'^my_redirect$',views.my_redirect)视图:
# 重定向def my_redirect(request): url=reverse("index") return redirect(url)现在的情形是访问127.0.0.1/my_redirect时自动跳转到127.0.0.1/index。
如果想重定向到127.0.0.1/abc时,直接修改项目中的urls.py文件为:
url(r'^abc',views.index,name="index")以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
问题如何在ASP.NETCore2.0中实现网址重定向?答案新建一个空项目,在Startup.cs文件中,配置RewriteOptions参数并添加网址重定向中
http重定向到https使用了nginx的重定向命令。那么应该如何写重定向?之前老版本的nginx可能使用了以下类似的格式。rewrite^/(.*)$htt
网上有很多的OkHttp的教程,但是并没有一个是关于如何OkHttp处理重定向的。这里的处理重定向的意思是:把重定向请求拦截下来,然后我们自己去请求重定向后的网
本文实例讲述了java实现响应重定向发送post请求操作。分享给大家供大家参考,具体如下:关于重定向我们用的比较多的还是redirect:重定向,默认发送的ge
apache开启重定向rewrite的实现方法1.开启重定向模块$ln-s/etc/apache2/mods-available/rewrite.load/et