Django模板引擎是Django框架的一部分,它是用于渲染HTML模板的组件。它提供了一种简单且灵活的方式来生成HTML内容,并支持从Python代码中传递动态数据到HTML模板中。
定义
Django模板引擎是一个用于渲染HTML模板的模块。模板引擎将模板文件转换为渲染后的HTML文档,使得动态内容可以被添加到HTML页面中。模板引擎在Django应用程序中被广泛使用,因为它提供了一个简单且灵活的方式来组织和呈现页面内容。
用法
Django模板引擎使用Django模板语言(DTL)来呈现HTML模板。DTL是一种专门为Django开发的模板语言,它支持逻辑控制、循环、条件判断等常见的编程语言特性。在Django中,我们可以在视图函数中使用模板引擎来渲染HTML模板。
以下是一个基本的Django视图函数示例,它使用模板引擎来渲染HTML模板:
代码语言:javascript复制from django.shortcuts import render
def my_view(request):
context = {'name': 'John'}
return render(request, 'my_template.html', context)
在这个示例中,我们使用render()函数来渲染HTML模板。第一个参数是请求对象,第二个参数是要渲染的模板文件名,第三个参数是要传递到模板中的数据(也称为上下文)。在模板文件中,我们可以使用{{}}语法来引用上下文中的变量。
以下是一个my_template.html的示例:
代码语言:javascript复制<html>
<head>
<title>Welcome</title>
</head>
<body>
<h1>Hello, {{ name }}!</h1>
</body>
</html>
在这个示例中,我们在HTML页面中使用{{ name }}来引用上下文中的变量。
Django模板引擎还支持逻辑控制语句,例如条件判断和循环。以下是一个使用if语句的示例:
代码语言:javascript复制{% if name %}
<h1>Hello, {{ name }}!</h1>
{% else %}
<h1>Hello, Stranger!</h1>
{% endif %}
在这个示例中,我们使用if语句来检查上下文中的name变量是否存在,并根据结果呈现不同的HTML内容。