python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Flask URL传参与视图映射

Flask URL传参与视图映射的实现方法

作者:coleak

这篇文章主要介绍了Flask URL传参与视图映射的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧

首页

url与视图函数的映射是通过@app.route()装饰器实现的。

只有一个斜杠代表的是根目录——首页。

传参

URL传参是通过<参数名称>的形式进行传递。URL中有几个参数,在视图函数中也要指定几个参数

from flask import Flask
app = Flask(__name__)
app.debug = True
@app.route('/')
def hello_world():
    return 'Hello World!'
@app.route('/content/<username>/<password>/')
def login(username, password):
    return u'我的用户名是:%s,密码是:%s' % (username, password)
if __name__ == '__main__':
    app.run()

URL数据类型

1)如果没有指定,默认是string类型
2)string:字符串,接收任何没有斜杠/的字符。
3)int:整型
4)float:浮点类型
5)path:和string类似,但是可以接收斜杠/
6)uuid:只接收uuid字符串
7)any:可以指定多个路径

不符合的类型将返回 not found

uuid

from flask import Flask
import uuid
app = Flask(__name__)
@app.route('/')
def hello_world():
    return 'Hello World!'
@app.route('/content/<uuid:username>/')
def login(username):
    return u'我的用户名是:%s' % (username)
if __name__ == '__main__':
    app.run()

get传参

from flask import Flask,request
app = Flask(__name__)
@app.route('/')
def hello_world():
    return 'welcome to coleak'
@app.route('/blog/<int:blog_id>')
# string int float path uuid any
def blog_detail(blog_id):
    return f"博客id是{blog_id}"
@app.route('/book/list')
def booklist():
    page=request.args.get('page',default=1,type=int)
    return f"您获取的是第{page}页数据。"
if __name__ == '__main__':
    app.run()

错误时默认为default设置的值

到此这篇关于Flask URL与视图映射的实现方法的文章就介绍到这了,更多相关Flask URL与视图映射内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文