Differences

This shows you the differences between two versions of the page.

Link to this comparison view

ii:labs:s2:02:tasks:04 [2024/03/17 15:45]
florin.stancu removed
ii:labs:s2:02:tasks:04 [2024/03/17 18:43] (current)
florin.stancu [04. [10p] Serving dynamic content]
Line 1: Line 1:
-==== 04. [20pAdvanced: File Database ​====+==== 04. [10pServing dynamic content ​====
  
-As a final task, we want to store some of the user's personal data into a simple file-based "​database"​ on the server. +Finally, we shall see how dynamic content can be interpolated ​
- +
-  * Check the ''​account-details.html''​ template page for any TODOs there! +
-    * Ultimately, the form inputs should ​be pre-filled with the values stores inside the database. +
-  * Implement the ''/​account-details''​ route handler to read / write to the ''​database.txt''​ file on the server; +
-    * You will have to support both GET and POST, so make sure to edit the decorator'​s arguments!+
  
 +  * Edit the website'​s second HTML page, enter ''​%%{{mycontent}}%%''​ (this literal text!) as content somewhere inside the main content block: <code html>
 +<div class="​content-box main-content">​
 +...
 +  {{mycontent}}
 +...
 +</​code>​
 +  * Now modify the ''​server.py''​ code (the ''​second_page''​ function) to take in the desired value as a request parameter and pass it to the ''​mycontent''​ template variable, e.g.: <code python>
 +def second_page():​
 +  render_template("​second.html",​ mycontent=request.args.get("​mycontent",​ "<​not specified>"​))
 +</​code>​
 +  * Open the endpoint URL and pass the ''​mycontent''​ value as a ''​GET''​ //URL parameter// (e.g., ''?​parameter=value''​) and see if the content changes dynamically after the request!
 +  * This is a template engine called Jinja, seamlessly integrated with Flask. More about this: next time!
  
ii/labs/s2/02/tasks/04.1710683154.txt.gz · Last modified: 2024/03/17 15:45 by florin.stancu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0