如何使路径 /name/int/float 为可选。
因此,如果我这样做:http://localhost/Zeref/尽管没有输入 int 或 float,它仍然可以工作。
如果我做了http://localhost/Zeref/1/它将只做 name 和 int 而不是浮点数。
那么我该怎么做才能使它们成为可选的呢?
代码:
import flask
win = flask.Flask(__name__)
@win.route("/<name>/<int:ints>/<float:floats>")
def web(name, ints, floats):
return "Welcome Back: %s Your Int: %d Your Float: %f" % (name, ints, floats)
win.run("localhost", 80)
Run Code Online (Sandbox Code Playgroud)
ars*_*sho 12
Flask 中允许使用可选参数。
您可以为同一功能定义多个规则。这是有关URL 路由注册的文档。
更新代码:
import flask
win = flask.Flask(__name__)
@win.route('/<name>/', defaults={'ints': None, 'floats': None})
@win.route('/<name>/<int:ints>/', defaults={'floats': None})
@win.route("/<name>/<int:ints>/<float:floats>/")
def web(name, ints, floats):
if ints!=None and floats!=None:
return "Welcome Back: %s, Your Int: %d, Your Float: %f" % (name, ints, floats)
elif ints!=None and floats==None:
return "Welcome Back: %s, Your Int: %d" % (name, ints)
return "Welcome Back: %s" % (name)
win.run(debug=True)
Run Code Online (Sandbox Code Playgroud)
当 chrome 或任何其他 Web 浏览器请求这些 URL 中的任何一个时,Flask 将调用关联的函数以及 URL 中提供的参数。如果没有提供或提供更少的参数,则将使用参数的默认值。
截图:
三个参数:
两个参数:
一参数:
| 归档时间: |
|
| 查看次数: |
4250 次 |
| 最近记录: |