Flask框架学习笔记之路由和反向路由详解【图文与实例】
技术  /  管理员 发布于 7年前   163
本文实例讲述了Flask框架学习笔记之路由和反向路由。分享给大家供大家参考,具体如下:
#-*- coding:utf-8 -*-from flask import Flask, request, url_forapp = Flask(__name__)# 路由@app.route("/")# 视图函数def index(): return "<h1>Hello World!</h1>"# 新的user路由@app.route("/user", methods = ['POST'])def hello_user(): return "<h1>Hello User!</h1>"# 动态路由。使用<>圈起来,输入网址时输入@app.route("/users/<id>")# 传入id参数def user_id(id): return "<h1>Hello user: " + id# 也可以不传参显示动态参数@app.route("/query_user")def query_user(): id = request.args.get('id') return "query_user: " + id# 反向路由,通过视图函数反导出url地址@app.route("/query_url")def query_url(): return "query_url: " + url_for('query_user')if __name__ == '__main__': app.run()
最基础的路由:@app.route('/')
,也为根路由,程序运行后使用浏览器打开http://127.0.0.1:5000/即可访问。
# 路由@app.route("/")# 视图函数def index(): return "<h1>Hello World!</h1>"
视图函数就是被当前路由所修饰的函数,return
返回html相关内容。
路由也可以修改当前的http方法来打开,flask路由默认的http方法是GET,这里使用methods=['POST']
将http方法改为POST。
访问网页时要更改http方法:
# 新的user路由@app.route("/user", methods = ['POST'])def hello_user(): return "<h1>Hello User!</h1>"
flask路由也可接受动态参数,动态参数需要使用<>
包裹表示。
# 动态路由。使用<>圈起来,输入网址时输入@app.route("/users/<id>")# 传入id参数def user_id(id): return "<h1>Hello user: " + id
需要在网址后输入任意合法的值来传入动态参数。
也可以使用request
方法实现动态参数传递。
# 也可以不传参显示动态参数@app.route("/query_user")def query_user(): id = request.args.get('id') return "query_user: " + id
输入网址时最后要加上?id=任意值,即可达到目的。
反路由通过视图函数表现出url地址,需使用url_for方法指向一个url。
# 反向路由,通过视图函数反导出url地址@app.route("/query_url")def query_url(): return "query_url: " + url_for('query_user')
本质是根据函数名反向生成url,使用函数 url_for()
来针对一个特定的函数构建一个 URL。它能够接受函数名作为第一参数,以及一些关键字参数, 每一个关键字参数对应于 URL 规则的变量部分。未知变量部分被插入到 URL 中作为查询参数。
这里用到了chrome浏览器的一个postman插件,具体安装方法参考https://segmentfault.com/a/1190000008512891
希望本文所述对大家基于flask框架的Python程序设计有所帮助。
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号