This shows you the differences between two versions of the page.
ii:labs:s2:03:tasks:01 [2024/04/01 21:39] florin.stancu created |
ii:labs:s2:03:tasks:01 [2024/04/01 21:59] (current) florin.stancu [01. [40p] Splitting web pages into Jinja2 templates] |
||
---|---|---|---|
Line 1: | Line 1: | ||
==== 01. [40p] Splitting web pages into Jinja2 templates ==== | ==== 01. [40p] Splitting web pages into Jinja2 templates ==== | ||
+ | |||
+ | First, {{ii:labs:s2:lab03-flask-advanced-skel.zip|download the lab archive}}. | ||
We now want to move the design from last time (a static ''html'' file) to use Flask Jinja2-based template rendering. | We now want to move the design from last time (a static ''html'' file) to use Flask Jinja2-based template rendering. | ||
Line 9: | Line 11: | ||
* Make sure to eliminate any duplicate code (the ''_base.html'' template should contain the common layout of all pages)! | * Make sure to eliminate any duplicate code (the ''_base.html'' template should contain the common layout of all pages)! | ||
* Modify ''server.py'' to call ''render_template'' from router functions to actually serve our new design; | * Modify ''server.py'' to call ''render_template'' from router functions to actually serve our new design; | ||
- | * Also create ''second.html'' and fill the Flask function to serve it (fill it with whatever content you want, like in the {{:02|previous lab}}); | + | * Also create ''second.html'' and fill the Flask function to serve it (fill it with whatever content you want, like in the [[ii:labs:s2::02|previous lab]]); |
* Finally, fix the URLs in the base template's menu to point to the appropriate pages. | * Finally, fix the URLs in the base template's menu to point to the appropriate pages. | ||