Flask路由变量规则
-
通过把 URL 的一部分标记为 <variable_name> 就可以在 URL 中添加变量。标记的 部分会作为关键字参数传递给函数。通过使用 < converter:variable_name> ,可以选择性的加上一个转换器,为变量指定规则。
string | (缺省值) 接受任何不包含斜杠的文本 |
---|---|
int | 接受正整数 |
float | 接受正浮点数 |
path | 类似 string ,但可以包含斜杠 |
uuid | 接受 UUID 字符串 |
一、string
from flask import Flask
import seetings
app = Flask(__name__)
app.config.from_object(seetings.DevelopmentConfig)
data = {'a': '上海', 'b': '陕西', 'c': '北京'}
@app.route('/getcity/<key>')
def get_city(key):
return data.get(key)
if __name__ == '__main__':
app.run()
注:key就是一个变量名,默认是字符串类型,渲染器绑定的函数必须携带参数
二、int
from flask import Flask
import seetings
app = Flask(__name__)
app.config.from_object(seetings.DevelopmentConfig)
@app.route('/add/<int:num>')
def add(num):
result = num+25
return str(result)
if __name__ == '__main__':
app.run()
不能返回值为int类型,故应转换为string类型
三、float
from flask import Flask
import seetings
app = Flask(__name__)
app.config.from_object(seetings.DevelopmentConfig)
@app.route('/add/<float:money>')
def add(money):
result = money * 5
return str(result)
if __name__ == '__main__':
app.run()
四、path
from flask import Flask
import seetings
app = Flask(__name__)
app.config.from_object(seetings.DevelopmentConfig)
@app.route('/index/<path:p>')
def index(p):
return p
if __name__ == '__main__':
app.run()
五、uuid
UUID 是 通用唯一识别码(Universally Unique Identifier)的缩写,是一种软件建构的标准,亦为开放软件基金会组织在分布式计算环境领域的一部分。其目的,是让分布式系统中的所有元素,都能有唯一的辨识信息,而不需要通过中央控制端来做辨识信息的指定。
import uuid
uid = uuid.uuid4()
print(uid)