一周学会Flask3 Python Web开发-Jinja2模板访问对象

锋哥原创的Flask3 Python Web开发 Flask3视频教程:

2025版 Flask3 Python web开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili

如果渲染模板传的是对象,如果如何来访问呢?

我们看下下面示例:

定义一个Student类

复制代码
class Student:
    def __init__(self, name, age):
        self.name = name
        self.age = age

构造一个对象,以及再定义一个lisi字典对象,渲染模板带上对象参数:

复制代码
@student_bp.route("/list")
def list():
    student = Student(name='张三', age=11)
    lisi = {
        "name": "李四",
        "age": 20
    }
    title = '学生信息列表2'
    return render_template('student.html', title=title, student=student, lisi=lisi)

我们可以通过{{ 对象.属性名 }}或者{{ 对象[属性] }}方式访问

复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>学生信息</title>
</head>
<body>
{{ title }}<br/>
{{ student.name }},{{ student.age }}<br/>
{{ student['name'] }},{{ student['age'] }}<br/>
{{ lisi.name }},{{ lisi.age }}<br/>
{{ lisi['name'] }},{{ lisi['age'] }}
</body>
</html>
相关推荐
好好学操作系统几秒前
flash_attn ImportError undefined symbol:
开发语言·python
CCPC不拿奖不改名1 分钟前
面向对象编程:继承与多态+面试习题
开发语言·数据结构·python·学习·面试·职场和发展
year--6 分钟前
虚拟环境安装requirements.txt
python
num_killer10 分钟前
小白的uv包管理工具使用
python·conda·pip·uv
华如锦10 分钟前
一.2部署——大模型服务快速部署vLLM GPU 安装教程 (Linux)
java·linux·运维·人工智能·后端·python·vllm
星火开发设计14 分钟前
Python数元组完全指南:从基础到实战
开发语言·windows·python·学习·知识·tuple
郝学胜-神的一滴16 分钟前
深入浅出:Python类变量与实例变量的核心差异与应用实践
开发语言·python·程序人生
BinaryBoss24 分钟前
Python mongodb批量修改数据库某个字段
数据库·python·mongodb
旦莫24 分钟前
自动化测试需求分析:从“做对”到“做好”的前提
python·测试开发·自动化·需求分析·ai测试
dagouaofei26 分钟前
工作计划 PPT 使用 AI 生成,与传统制作方式有什么不同
人工智能·python·powerpoint