零、前言
上篇文章,我们介绍了成功了入门了Flask。 本篇文章,我们介绍Flask动态路由。
一、动态路由
首先,我们创建一个普通的book 页面
from flask import Flask
app = Flask(__name__)
@app.route('/book')
def book():
return 'Hello Book'
一个图书系统,通常是有很多书的。每本书有不同的内容,所以一本书通常会对应一个链接。如果你没有学过动态路由,你可能会向下面这样做
@app.route('/book/1')
def book1():
return 'I am Book 1'
@app.route('/book/2')
def book2():
return 'I am Book 2'
如果,图书馆有100本书,那么我们岂不是要累死在这里。
所以有了动态路由的概念,我们要捕捉URL中对应的参数。我们可以通过下面的代码实现根据URL中的id,返回不同的页面内容。
@app.route('/books/<id>')
def books(id):
return 'I am Book ' + id
if __name__ == '__main__':
app.run(debug=True)
当然我们可以把程序写的更严谨一些,我们知道id 一定是int 类型的。我们可以像下面书写程序(不过,我个人用这种方法比较少)
@app.route('/books_int/<int:id>')
def books_int(id):
return 'I am Book ' + str(id)
都看到这里了,点个赞白!
|