Python Flask Web 第六课 —— 静态文件
2016-06-04 11:00
363 查看
1. 静态文件与 web 程序的组成
Web 程序不是仅由Python 代码
模板组成,
静态文件,
HTML 代码中引用的图片、
JavaScript 源码文件、
CSS;
>>> app = Flask(__name__) >>> app.url_map Map([<Rule '/static/<filename>' (GET, OPTIONS, HEAD) -> static>])
当我们查看 URL 映射时,其中默认就有一个 static 路由,
当然,当我们使用 bootstrap 时:
>> from flask_bootstrap import Bootstrap >> bootstrap = Bootstrap(app) >> app.url_map Map([<Rule '/static/bootstrap/<filename>' (GET, OPTIONS, HEAD) -> bootstrap.static>, <Rule '/static/<filename>' (GET, OPTIONS, HEAD) -> static>])
当我们在认为添加新的路由时:
@app.route('/') def index(): return '<h1>hello world!</h1>' >> app.url_map Map([<Rule '/' (GET, OPTIONS, HEAD) -> index>, <Rule '/static/bootstrap/<filename>' (GET, OPTIONS, HEAD) -> bootstrap.static>, <Rule '/static/<filename>' (GET, OPTIONS, HEAD) -> static>])
对静态文件的引用被当做一个特殊的路由,
/static/<filename>。例如,调用:
url_for('static', filename='css/styles.css', _external=True)
得到的结果是
http://localhost:5000/static/css/styles.css
默认设置下,Flask 在程序根目录中名为 static 的子目录中寻找静态文件。如果需要,可在static 文件夹存放文件。服务器收到前面的 URL 后,会生成一个响应,包含文件系统中
static/css/styles.css文件的内容。
2. 一个示例
如何在程序的基模板(template/base.html)中放置 favicon.ico 图标,该图标会显示在浏览器的地址栏中,{% block head %} {{ super() }} <link rel="shortcut icon" href="{{ url_for('static', filename='favicon.ico')}}" type="image/x-icon"> <link rel="icon" href="{{ url_for('static', filename='favicon.ico')}}" type="image/x-icon"> {% endblock %}
相关文章推荐
- Python中import导入上一级目录模块及循环import问题的解决
- python类4
- 搭建Python+Eclipse开发环境
- 从今天开始学习python和英语
- Python输出汉字字库及将文字转换为图片的方法
- 简易selenium自动化测试框架(Python)
- python 发送邮件实例
- 使用Python的Flask框架来搭建第一个Web应用程序
- python——template (一)
- Python 基础学习
- pip更新问题
- Python科学计算环境推荐——Anaconda
- python selenium
- Python Day4 函数 装饰器
- Scipy SVD
- Python 中的Pyc文件
- python 内置函数
- 用python自动发微博
- Python_Day_4(内置函数之篇)
- python set operation