作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的 flask 应用程序中具有以下路由
from foo import get_foo
@app.route("/foo/<int:id>")
def foo_id(id):
return render_template('foo.html', foo = get_foo(id))
@app.route("/foo/<int:id(1-300)")
这样的东西(我不知道执行此操作的确切方法。
最佳答案
Flask使用了Werkzeug路由系统,在检查了Werkzeug URL Routing docs之后,我发现可以在路由规则中进行范围控制。
From Werkzeug docs
class werkzeug.routing.IntegerConverter(map, fixed_digits=0, min=None, max=None)
min
和
max
:
@app.route("/foo/<int(min=1, max=300):id>")
如果
id
超出范围,则请求将获得响应
404
。
get_foo
方法404
超出范围,则第一个选项将立即响应id
。id
的范围,并执行您想处理的错误请求。 关于python - 如何在Flask路由(Werkzeug)中验证整数范围?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19076226/
我是一名优秀的程序员,十分优秀!