- Flask Framework Cookbook
- Shalabh Aggarwal
- 217字
- 2021-08-05 17:17:20
Organization of static files
Organizing static files such as JavaScript, stylesheets, images, and so on efficiently is always a matter of concern for all web frameworks.
How to do it…
Flask recommends a specific way to organize static files in our application:
my_app/ - app.py - config.py - __init__.py - static/ - css/ - js/ - images/ - logo.png
While rendering them in templates (say, the logo.png
file), we can refer to the static files using the following line of code:
<img src='/static/images/logo.png'>
How it works…
If there exists a folder named static
at the application's root level, that is, at the same level as app.py
, then Flask will automatically read the contents of the folder without any extra configuration.
There's more…
Alternatively, we can provide a parameter named static_folder
to the application object while defining the application in app.py
:
app = Flask(__name__, static_folder='/path/to/static/folder')
In the img src
path in the How to do it… section, static
refers to the value of static_url_path
on the application object. This can be modified as follows:
app = Flask( __name__, static_url_path='/differentstatic', static_folder='/path/to/static/folder' )
Now, to render the static file, we will use the following:
<img src='/differentstatic/logo.png'>
Note
It is always a good practice to use url_for
to create the URLs for static files rather than explicitly define them:
<img src='{{ url_for('static', filename="logo.png") }}'>
We will see more of this in the upcoming chapters.
- C++面向對象程序設計(第三版)
- JavaScript前端開發模塊化教程
- 軟件界面交互設計基礎
- 算法大爆炸:面試通關步步為營
- Julia機器學習核心編程:人人可用的高性能科學計算
- Mastering Kali Linux for Web Penetration Testing
- Mastering Linux Network Administration
- 碼上行動:用ChatGPT學會Python編程
- 時空數據建模及其應用
- Node.js 12實戰
- Java EE 8 and Angular
- 大學計算機應用基礎(Windows 7+Office 2010)(IC3)
- Web前端開發最佳實踐
- PHP項目開發全程實錄(第4版)
- Jakarta EE Cookbook