5 flask之模板語言-Jinja2
阿新 • • 發佈:2022-03-23
比django中多可以加括號,執行函式,傳引數
1 專案路徑下新建templates資料夾
class Flask(Scaffold): def __init__( self, import_name: str, static_url_path: t.Optional[str] = None, static_folder: t.Optional[t.Union[str, os.PathLike]] = "static", static_host: t.Optional[str] = None, host_matching: bool = False, subdomain_matching: bool = False, template_folder: t.Optional[str] = "templates", instance_path: t.Optional[str] = None, instance_relative_config: bool = False, root_path: t.Optional[str] = None, ): super().__init__( import_name=import_name, static_folder=static_folder, static_url_path=static_url_path, template_folder=template_folder, root_path=root_path, )
2 templates下新建index.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <h1>使用者列表</h1> <table> {% for k,v in user_dict.items() %} <tr> <td>{{k}}</td> <td>{{v.name}}</td> <td>{{v['name']}}</td> <td>{{v.get('name')}}</td> <td><a href="/detail/{{k}}">檢視詳細</a></td> </tr> {% endfor %} </table> </body> </html>
3 main.py
from flask import Flask, render_template app = Flask(__name__) USERS = { 1: {'name': '張三', 'age': 18, 'gender': '男', 'text': "道路千萬條"}, 2: {'name': '李四', 'age': 28, 'gender': '男', 'text': "安全第一條"}, 3: {'name': '王五', 'age': 18, 'gender': '女', 'text': "行車不規範"}, } @app.route('/index', methods=['GET']) def index(): return render_template('index.html', user_dict=USERS) if __name__ == '__main__': app.run()
執行程式,訪問http://127.0.0.1:5000/index