模板渲染jnja2模块
模板的引入:
在返回动态页面时,上述我们在08版web框架返回每次访问的时间,利用自己写的占位符进行字符串替换进行动态响应;
在实际应用中,完全可以从数据库中读取数据,然后替换html页面中的相关内容(专业名词就是模板渲染,后台渲染先渲染,再返回给浏览器渲染),响应给浏览器动态数据。
数据替换的过程就是通过模板渲染数据,本质就是对HTML中的某些特殊符号进行了替换来展示动态数据。这里常用的特殊符号的定义有现成的渲染模板工具:jinja2模块(非内置模块,配置好pip环境变量的前提下在cmd交互式窗口执行:pip install jinja2或者在pycharm设置中的项目环境变量进行引入)。
jinja2模板渲染格式案例:
index.html
1 <!doctype html> 2 3 <html lang="en"> 4 5 <head> 6 7 <meta charset="UTF-8"> 8 9 <style> 10 11 table,th,td{ 12 13 border: 1px solid black; 14 15 border-collapse:collapse;} 16 17 </style> 18 19 <title>jinja2渲染模板</title> 20 21 </head> 22 23 <body> 24 25 <div> 26 27 <table> 28 29 <thead> 30 31 <tr> 32 33 <th>姓名</th> 34 35 <th>爱好</th> 36 37 </tr> 38 39 </thead> 40 41 <tbody> 42 43 <tr> 44 45 <td>{{name}}</td> 46 47 <td> 48 49 <ul> 50 51 {% for hobby in hobbylist%} 52 53 <li>{{hobby}}</li> 54 55 {% endfor %} 56 57 </ul> 58 59 </td> 60 61 </tr> 62 63 </tbody> 64 65 </table> 66 67 </div> 68 69 </body> 70 71 </html>