1.链接
任何具有多个路由的程序都需要可以连接不同页面的链接,例如导航条。
在模板中直接编写简单路由的URL链接不难,但对于包含可变部分的动态路由,在模板中构建正确的URL就很困难。而且,直接编写URL会对代码中定义的路由产生不必要的依赖关系。如果重新定义路由,模板中的链接可能会失效。
为了解决这个问题,我们在模板中使用 url_for() 函数,利用以视图函数名生成URL
① 以参数为视图函数名
url_for('index')
返回相对地址,即 ‘/’
若加一个参数
url_for('index', _external=True)
则返回绝对地址,即 ‘http://localhost:5000/’
生成连接程序内不同路由的链接时,使用相对地址就足够了。如果要生成在浏览器之外使用的链接,则必须使用绝对地址,例如在电子邮件中发送的链接。
② 使用url_for()时,将动态部分作为关键字参数传入,以生成动态地址,如:
url_for('user', name='john', _external=True)
返回:http://localhost:5000/user/john
③ 传入url_for()的关键字参数不仅限于动态路由中的参数。函数