_ . . . 重定向

作用:
    t通过重定向,实现从一个视图函数跳转到另一个视图函数的操作

导入重定向
from flask import redirect,url_for

说明

重定向    参数为要跳转的路由地址
2.url_for    通过视图函数,动态生成路由地址
3.组合使用和django中的redirect(reverse())一个意思
redirect(url_for(endpoint,**values))

实例:

要跳转的视图函数
from flask import Flask

app = Flask(__name__)

@app.route('/')
def index():
   return '无参路由'

@app.route('/arg/<arg1>')
def arg(arg1):
    return 'arg1的值为%s' % arg1

@app.route('/args/<args1>/<args2>/')
def args(args1,args2):
    return 'args1的值为{} args2的值为{}'.format(args1,args2)

重定向的实例代码

@app.route('/redirect/')
def myRedirect():
    return redirect('/') # 重定向到无参路由
    return redirect('/arg/zhangsan/') # 重定向到一个参数的路由地址
    return redirect('/arg/zhangsan/18/')# 重定向到多个参数的路由地址
    return url_for('index') # 输出反向构造出index的路由地址
    return url_for('arg',arg1='zhangsan') # /arg/zhangsan/
    return url_for('args',args1='zhangsan',arg2=18) # /args/zhangsan/18
    return url_for('index') # 访问一个不存在的路由
# 报错:Could not build url for endpoint 'indexx'. Did you mean 'index' instead?
     return url_for('args') #Could not build url for endpoint 'args'. Did you forget to specify values ['arg1', 'arg2']?

    return redirect(url_for('index')) # 反向构造出路由定制重定向

注意:

如果给定的视图函数不存在,或者视图函数有参没有传,则构造失败(报错)

image
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一个刹车,坐在公交最后一排的她猛然抬起头,从略凌乱的发间偷偷瞄了一眼前方,像受惊的小猫睁大了眼睛,说是看看情况,其...
    城市_自由行走的猫阅读 1,865评论 0 0
  • 又是一年桂花开,是伴着小雨的淅淅沥沥。 不知为何自己在何时成为了那个出门必带雨伞的人,但又是那个带着伞不喜欢打伞的...
    渝聆墨阅读 1,898评论 0 1
  • 上一章 目录 …… “…好。”轻轻的尾音游荡在灯光下。 一不留神就到了几天后,开始比赛的日子。当然,一场盛大...
    Yi_氤阅读 2,962评论 0 3