Django学习教程(十三)Django模板系统基本使用

Django学习教程(十三)Django模板系统基本使用

前言

  上一篇我们使用Bootstrap搭建了一个静态博客页面,但是页面内容是写死的。这一篇我们来学习Django模板系统。

  模板系统可以把HTML页面和后端数据结合起来,这样我们就可以把数据库中的文章数据展示到页面中。

1.模板介绍

Django中的模板一般是HTML文件。

视图函数查询到数据后,可以把数据传递给模板,然后由模板负责展示页面。

执行流程可以简单理解为:

复制代码
浏览器请求 -> urls.py -> views.py -> 查询数据 -> 模板渲染 -> 返回页面

2.创建模板目录

在blog应用下创建templates目录。

目录结构如下:

复制代码
blog
│
└─templates
    └─blog
        │  index.html

这里建议在templates目录下再创建一个blog目录,避免多个应用中模板名称冲突。

3.编写模板页面

在index.html中写入内容。

代码:

复制代码
<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <title>Django博客</title>
</head>
<body>
    <h2>{{ title }}</h2>
    <p>{{ content }}</p>
</body>
</html>

这里的{``{ title }}{``{ content }}是模板变量。

4.编写视图函数

打开views.py文件。

代码:

复制代码
from django.shortcuts import render


def index(request):
    context = {
        'title': 'Django博客',
        'content': '这是我的第一个Django模板页面'
    }
    return render(request, 'blog/index.html', context)

render方法可以把数据传递给模板,并返回渲染后的页面。

5.配置路由

打开urls.py文件。

代码:

复制代码
from django.contrib import admin
from django.urls import path
from blog import views

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', views.index),
]

6.访问页面

启动项目。

命令:

复制代码
python manage.py runserver

浏览器访问:

复制代码
http://127.0.0.1:8000/

页面会显示:

复制代码
Django博客
这是我的第一个Django模板页面

7.总结

  这一篇我们学习了Django模板系统的基本使用,知道了怎样创建模板文件,并通过render方法把数据传递给模板。

  模板中可以使用{``{ 变量名 }}来显示后端传递过来的数据。下一篇我们继续学习使用模板系统渲染博客文章列表,如果对你有帮助,点赞加关注,下篇见。

相关推荐
JavaWeb学起来3 天前
Django学习教程(十二)使用Bootstrap搭建静态博客页面
python web·django教程·django学习·django基础
JavaWeb学起来5 天前
Django学习教程(十一)实现博客数据返回页面
python web·django教程·django学习·django基础
JavaWeb学起来6 天前
Django学习教程(十)Django Admin后台管理模块
python web·django教程·django学习·django基础
JavaWeb学起来7 天前
Django学习教程(九)Django Shell基本使用
python web·django教程·django学习·django基础
JavaWeb学起来10 天前
Django学习教程(八)Django数据迁移migrations
python web·django教程·django学习·django基础
JavaWeb学起来11 天前
Django学习教程(七)创建博客文章模型
python web·django教程·django学习·django基础
JavaWeb学起来12 天前
Django学习教程(六)模型层Model基本介绍
python web·django教程·django学习·django基础
JavaWeb学起来13 天前
Django学习教程(五)Django HelloWorld入门案例
python web·django教程·django学习·django基础
JavaWeb学起来14 天前
Django学习教程(四)Django项目目录结构介绍
python web·django教程·django学习·django基础