上一篇中,我们用Flask写了一个Hello World程序,让大家领略到了Flask的简洁轻便。从这篇开始我们将对Flask框架的各功能作更详细的介绍,我们首先从路由(Route)开始。
系列文章
路由
从Hello World中,我们了解到URL的路由可以直接写在其要执行的函数上。有人会质疑,这样不是把Model和Controller绑在一起了吗?的确,如果你想灵活的配置Model和Controller,这样是不方便,但是对于轻量级系统来说,灵活配置意义不大,反而写在一块更利于维护。Flask路由规则都是基于Werkzeug的路由模块的,它还提供了很多强大的功能。
带参数的路由
让我们在上一篇Hello World的基础上,加上下面的函数。并运行程序。
@app.route('/hello/')
def hello(name):
return 'Hello %s' % name
当你在浏览器的地址栏中输入http://localhost:5000/hello/man,你将在页面上看到”Hello man”的字样。URL路径中/hello/后面的参数被作为hello()函数的name参数传了进来。
你还可以在URL参数前添加转换器来转换参数类型,我们再来加个函数:
@app.route('/user/')
def get_user(user_id):
return 'User ID: %d' % user_id
试下访问http://localhost:5000/user/man,你会看到404错误。但是试下http://localho