2.2 url_for
2017-10-20 本文已影响377人
林天宇
url_for是个什么东东
调用视图函数的url
在Jinja的HTML文件中,使用url_for('视图函数名称')
,可以得到视图函数的url。如下例:
<a href="{{ url_for('login') }}">登 录</a>
显示成Html时候便是调用对应的视图函数的url。
加载静态文件
- 静态文件一般存放在
/static
子目录下,可用形同下述的方法,即可获得文件路径。
{{url_for('static',filename='路径名+文件名')}}
常用的有css、img、js等文件,如下面例子所示,便可加载/static/css/index.css
这个文件:
<link rel="stylesheet" href="{{ url_for('static',filename='css/index.css') }}">
重点笔记
1、从flask中增加import
2、url_for:
用法一:url_for('视图函数名'),得到视图函数的链接;
用法二:url_for('static',filename=‘css/style.css’) 得到静态文件地址 /static/css/style.css
用法三:url_for('static',filename=‘css/style.css’, _external=True)得到静态文件的绝对地址 http://网站/static/css/style.css
扩展用法:使用 url_for() 生成动态地址时,将动态部分作为关键字参数传入。例如,url_for ('user', name='john', _external=True)的返回结果是http://localhost:5000/user/john。
传入 url_for() 的关键字参数不仅限于动态路由中的参数。函数能将任何额外参数添加到 查询字符串中。例如,url_for('index', page=2)的返回结果是/?page=2。