Django通过视图函数使用render()将上下文数据传递给HTML模板,模板利用{{ }}渲染变量、{% %}执行逻辑控制,支持继承与静态文件加载,实现高效灵活的页面生成。
在Django中,HTML模板的传递与渲染是通过视图函数(或类视图)将数据传递给模板文件,再由Django模板引擎解析并生成最终的HTML页面返回给用户。整个过程涉及视图、模板和上下文数据三部分协同工作。
在Django视图中,使用 render() 函数可以将上下文数据传递给指定的HTML模板文件。
示例代码:
from django.shortcuts import renderdef home_view(request): context = { 'title': '首页', 'message': '欢迎使用Django!', 'user_list': ['张三', '李四', '王五'] } return render(request, 'home.html', context)
Django模板使用双大括号 {{ }} 来输出变量内容。
home.html 示例:
{{ title }}
{{ message }}
Django模板语言提供 {% %} 语法用于控制结构,如循环、条件判断等。
例如,使用模板继承构建基础布局:
{% block title %}{% endblock %} 我的网站
{% block content %} {% endblock %} {% extends "base.html" %} {% block title %}{{ title }}{% endblock %} {% block content %}
{{ message }}
HTML模板中引用CSS、JavaScript、图片等静态资源时,需加载 static 模块。
示例:
{% load static %}
@@##@@
确保 settings.py 中已配置 STATIC_URL 和 STATICFILES_DIRS。
基本
上就这些。Django通过简洁的上下文传递和强大的模板系统,让HTML渲染变得灵活又高效。只要掌握 render 函数、模板变量、标签和静态文件处理,就能顺利实现前后端数据交互。