Django里的模板变量

变量是模板中最基本的组成单位,是视图传递给模板的数据; 当模板引擎遇到变量时,会将该变量计算为结果; 变量以{{variable}}表示,如: obj={"name":"张三","age":18}

{{obj.name}} #输出 张三 {{obj.age}} #输出 18

假设我们有一个 Django 视图函数如下:

javascript 复制代码
from django.shortcuts import render

def profile(request):
    user_info = {
        'username': 'Alice',
        'age': 25,
        'city': 'Beijing'
    }
    return render(request, 'profile.html', {'user_info': user_info})

在这个示例中,profile 视图函数向模板传递了一个名为 user_info 的字典,其中包含了用户信息:用户名、年龄和所在城市。

接着,我们在 profile.html 模板中使用这些传递的变量进行展示:

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>User Profile</title>
</head>
<body>
    <h1>User Profile</h1>
    <p><strong>Username:</strong> {{ user_info.username }}</p>
    <p><strong>Age:</strong> {{ user_info.age }}</p>
    <p><strong>City:</strong> {{ user_info.city }}</p>
</body>
</html>

在这个模板中,我们通过 {``{ user_info.username }}{``{ user_info.age }}{``{ user_info.city }} 分别显示了用户的用户名、年龄和所在城市,这些数据都来自于视图函数传递的 user_info 字典。

当用户访问 profile 视图时,Django 将渲染这个模板并将用户信息动态地填充到对应位置,最终呈现给用户的页面将显示类似如下内容

User Profile

Username: Alice

Age: 25

City: Beijing

相关推荐
RestCloud15 小时前
SQL Server到Hive:批处理ETL性能提升30%的实战经验
数据库·api
RestCloud15 小时前
为什么说零代码 ETL 是未来趋势?
数据库·api
ClouGence17 小时前
CloudCanal + Paimon + SelectDB 从 0 到 1 构建实时湖仓
数据库
c8i21 小时前
django中的FBV 和 CBV
python·django
DemonAvenger1 天前
NoSQL与MySQL混合架构设计:从入门到实战的最佳实践
数据库·mysql·性能优化
AAA修煤气灶刘哥1 天前
后端人速藏!数据库PD建模避坑指南
数据库·后端·mysql
RestCloud2 天前
揭秘 CDC 技术:让数据库同步快人一步
数据库·api
得物技术2 天前
MySQL单表为何别超2000万行?揭秘B+树与16KB页的生死博弈|得物技术
数据库·后端·mysql
可涵不会debug2 天前
【IoTDB】时序数据库选型指南:工业大数据场景下的技术突围
数据库·时序数据库
ByteBlossom2 天前
MySQL 面试场景题之如何处理 BLOB 和CLOB 数据类型?
数据库·mysql·面试