Необязательные параметры допускаются в колбе.
Вы можете определить несколько правил для одной и той же функции.Вот документация по регистрациям 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)
Когда chrome или любой другой веб-браузер запрашивает любой из этих URL-адресов, Flask вызываетсвязанная функция вместе с аргументами, указанными в URL.Если аргументы отсутствуют или меньше, будут использоваться значения аргументов по умолчанию.
Снимки экрана:
Три параметра:
![Three parameters](https://i.stack.imgur.com/ORa3X.png)
Два параметра:
![Two parameters](https://i.stack.imgur.com/SXwFH.png)
Одинпараметр:
![One parameter](https://i.stack.imgur.com/v1AVj.png)