Django网络框架使用(三)

本文介绍如何在Django项目中配置并使用模板,包括创建模板文件、配置模板路径、向模板传递数据以及展示数据的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Django 模板

模板的概念:
   模板是一个文本,用于分离文档的显示格式和内容。
类似于jsp,asp等对页面的操作

应用实例

在之前已经创建好的项目Web1中创建 Folder 目录
后建立 page1.html文件
文件

page1.html 中代码如下:

<!DOCTYPE html>

<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta charset="utf-8" />
    <title></title>
</head>
<body>
    <h2>{{first}}</h2>
</body>
</html>

注:变量使用了双括号


写入模板文件的路径

修改settings.py(配置文件)
修改 TEMPLATES 中的 DIRS 为 [BASE_DIR+”/Folder”],
如下所示:

...TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [BASE_DIR+"/Web1/Folder"],       # 修改模板位置
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]

路径配置

注意:一定要在 BASE_DIR(项目地址)后面加’+’(连接地址字符串)要不会因为路径配置不对找不到文件

在VS中不能直接把文件夹添加最外面与项目(最外面那个Web1)同级
只好在Web1(配置文件)文件夹内添加Folder文件夹
实际开发都会在外部添加Django应用,自动生成许多文件

路径配置

之后修改创建过的装载文档 view.py

增加一个新的对象,用于向模板提交数据:

代码:

from django.http import HttpResponse
from django.shortcuts import render

def hello(request):
    connect_text          = {}       #初始化context为dict(map)
    connect_text['first'] = 'Hello World!' #设置first变量的值为字符串 Hello World!
    return render(request, 'Page1.html', connect_text);
    #render()用来链接Page1.html文档中的变量使用和connect_text字典

图片

render 底层也是 HttpResponse

render 接受了一个字典 connect_text 作为参数。
connect_text 字典中元素的键值 “first” 对应了模板中的变量 “{{ first }}”
此时的参数中的 Page1.html 将在BASE_DIR/Folder 构成的默认DIRS 查找

源码中可以看到:
源码

此时传入的connect_text字典将会在’Page1.html’文档匹配到Key然后取Value,并用HttpResponse返回到Response头中

运行
再访问访问 http://127.0.0.1:8000/index,(命令行中启动python manage.py runserver 0.0.0.0:8000,可指定ip以及端口)可以看到页面:

主页

此时已完成使用基本模板来输出数据,实现数据与视图分离

补齐一下一下些同学所关心的应用,项目的概念问题

项目中可以有多个应用,本身自带的且与项目名称同名的是网站基本配置文件,
除此之外,为个人独立创建的应用,可能是某一个功能的集合,也可能是某个特定的模块。。。

下一节是模板语法规则

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值