当前位置: 首页 > news >正文

Flask入门教程——李辉 第三章 关键知识梳理

文章目录

      • Flask入门教程——李辉 第三章 关键知识梳理
        • 两个概念
        • 模板(Jinja2)基本语法
        • 实现案例
        • 效果演示

Flask入门教程——李辉 第三章 关键知识梳理

两个概念
  • 模板
  • 渲染

把包含变量和运算逻辑的HTML或其他格式的文本叫做模板,执行这些变量替换和逻辑计算工作的过程被称为渲染

Flask使用的模板渲染引擎是Jinja2

render_template函数用于渲染模板

模板(Jinja2)基本语法
  • 三种常用定届符
  • 过滤器语法 {{变量|过滤器}}
  1. 标记变量 {{ ... }}
  2. 标记语句 {% ... %}
  3. 写注释 {# ... #}

所有可用的过滤器

实现案例
  1. 创建模板文件夹
mkdir templates
  1. 编写主页模板(templates/index.html)

vscode快速生成网页模板技巧

vscode Jinja2扩展 Jinja2 Enhance

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>{{ name }}'s Watchlist</title>
</head>
<body><h2>{{ name }}'s Watchlist</h2>{# 使用 length 过滤器获取 movies 变量的长度 #}<ul>{% for movie in movies %} {# 迭代movies 变量 #}<li>{{ movie.title }} - {{ movie.year }}{# 等同于 movie['title'] #}{% endfor %} {# 不要忘记endfor 来结束for语句 #}</li></ul><footer><small>&copy; 2018 <a href="http://helloflask.com/tutorial">HelloFlask</a></small></footer>
</body>
</html>
  1. 创建虚拟数据
# coding = utf-8
from faker import Fakerfake = Faker(locale="zh_CN")def create_movies_generator(number:int):"""创建生成器:param number: 生成的个数整数:return: 字典类型的数据"""for _ in range(number):title = fake.sentence()year = fake.year()yield {"title": title,"year":year}if __name__ == "__main__":movies = list(create_movies_generator(10))print(movies)
  1. 渲染主页
# coding = utf-8
from flask import Flask,render_templateapp = Flask(__name__)name = "开心开心-急了"
movies = [{'title': '实现研究而且.', 'year': '1997'}, {'title': '重要出来不要不要广告.', 'year': '1987'},{'title': '活动这些城市.', 'year': '1995'},{'title': '历史网上你的来源选择销售没有.', 'year': '2006'},{'title': '这样简介个人如果信息怎么类型.', 'year': '2024'}, {'title': '能够时候两个.', 'year': '2004'}, {'title': '部分有限电影不要得到应用.', 'year': '2022'}, {'title': '设备处理最后大学为了.', 'year': '1996'},{'title': '来自谢谢决定.', 'year': '2021'},{'title': '提供所以大家您的非常以后有关.', 'year': '2016'}]@app.route("/")
def index():return render_template("index.html",name=name,movies=movies)
效果演示

效果演示

http://www.dtcms.com/a/499398.html

相关文章:

  • 产品更新与重构策略:创新与稳定的平衡之道
  • 【微服务】(1) Spring Cloud 概述
  • 做外贸球衣用什么网站嘉兴做微网站
  • 京华建设科技有限公司网站中华建筑网校
  • 合肥市高新区2025年初中信息学竞赛试题T1-T4 C++ 有故事听[doge]
  • Day 13 root 相关说明--以 ANAEX01 为实例
  • [Linux]学习笔记系列 -- [kernel][lock]debug_locks
  • Linux中双向链表介绍
  • 建设网站的运行费包括什么地方企业做网站哪家公司好
  • 产品频繁重构:企业发展的双刃剑
  • 微软Win11双AI功能来袭:“AI管家”+聊天机器人重构桌面交互体验
  • 2025年SEVC SCI2区,改进混沌多元宇宙算法+可重构作业车间物料配送优化,深度解析+性能实测,深度解析+性能实测
  • 建设网站的网站底压电工证wordpress导航主题模板下载地址
  • 自己做的网站怎么弄成app包装产品做网站
  • [GO]GORM中的Tag映射规则
  • 网站建设全包公司推荐山东大学青岛校区建设指挥部网站
  • P8611 蚂蚁感冒
  • 网站服务器知识平远县建设工程交易中心网站
  • 支付宝沙箱环境和正式环境
  • 【硬件基础】自用——二极管の配图
  • 天津企业模板建站哪个好wordpress可视化编辑主题
  • 网站配置到iis后读不了数据室内设计平面图简单
  • 扭蛋机 Roll 福利房小程序前端功能设计:融合趣味互动与福利适配
  • 认识mysql
  • PostgreSQL与MySQL对比小结
  • 数据结构与使用
  • Redis位域详细介绍
  • 破解高度差光学镜片检测难题,景深融合 AI 方案让制造更高效
  • eclipse可以做门户网站嘛wordpress5.1更新
  • 吉林电商网站建设价格新浪短网址在线生成