前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >模板基本使用

模板基本使用

作者头像
星哥玩云
发布2022-09-14 17:29:34
5140
发布2022-09-14 17:29:34
举报
文章被收录于专栏:开源部署

一、概述

模板是HTML页面,可以根据传递的数据进行填充

二、模板存放目录

  1. 在应用目录下创建名为templates目录来存放模板
  2. 在工程目录下创建名为templates目录来存放模板

三、将templates标记为模板文件夹

屏幕快照 20191216 下午5.20.30.png
屏幕快照 20191216 下午5.20.30.png

四、配置模板目录

目的

让工程知道哪个目录是存放模板的

配置

settings.py文件中的TEMPLATES字段

代码语言:javascript
复制
TEMPLATES = [ 
    {   
        <span class="hljs-string">'BACKEND'</span>: <span class="hljs-string">'django.template.backends.django.DjangoTemplates'</span>,
        <span class="hljs-string">'DIRS'</span>: [os.path.join(BASE_DIR, <span class="hljs-string">"templates"</span>)],
        <span class="hljs-string">'APP_DIRS'</span>: <span class="hljs-keyword">True</span>,
        <span class="hljs-string">'OPTIONS'</span>: {
            <span class="hljs-string">'context_processors'</span>: [
                <span class="hljs-string">'django.template.context_processors.debug'</span>,
                <span class="hljs-string">'django.template.context_processors.request'</span>,
                <span class="hljs-string">'django.contrib.auth.context_processors.auth'</span>,
                <span class="hljs-string">'django.contrib.messages.context_processors.messages'</span>,
            ],  
        },  
    },  
]

五、定义模板 index.html

  1. 目的

作为主页使用

  1. 模板
代码语言:javascript
复制
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>主页</title>
</head>
<body>
    <h1>Lucky is a ver good man</h1>
</body>
</html>
  1. 视图
代码语言:javascript
复制
<span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">index</span><span class="hljs-params">(request)</span>:</span>
    <span class="hljs-comment"># 返回主页</span>
    <span class="hljs-comment"># 参数1:request</span>
    <span class="hljs-comment"># 参数2:模板路径</span>
    <span class="hljs-keyword">return</span> render(request, <span class="hljs-string">"index.html"</span>)
  1. 路由
代码语言:javascript
复制
path(<span class="hljs-string">r''</span>, views.index)
  1. 测试网址 http://127.0.0.1:8000

六、展示所有用户

  1. 视图
代码语言:javascript
复制
<span class="hljs-keyword">from</span> App.models <span class="hljs-keyword">import</span> User
<span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">user</span><span class="hljs-params">(request)</span>:</span>
    <span class="hljs-comment"># 返回所有班级信息</span>
    <span class="hljs-comment"># 告诉模型获取所有班级信息</span>
    userData = User.objects.all()
    <span class="hljs-comment"># 将数据传递给模板,模板进行渲染,并返回页面</span>

    data = {
        <span class="hljs-string">"userData"</span>: userData
    }
    <span class="hljs-comment">#参数3:字典类型,传递给模板的数据</span>
    <span class="hljs-keyword">return</span> render(request, <span class="hljs-string">"user.html"</span>, data)  <span class="hljs-comment">#参数1 request 模板名称  参数2 模板名称 参数3 要传递的数据</span>
  1. 路由
代码语言:javascript
复制
path(<span class="hljs-string">r'user/'</span>, views.user)
  1. 模板 user.html
代码语言:javascript
复制
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>用户信息</title>
    <style>
        table{
            border-collapse: collapse; /*合并单元格*/
            margin: auto; /*居中*/
        }
        tr>td{
            width: 150px; /*宽度*/
            border:1px solid chartreuse; /*边框*/
            text-align: center; /*文字水平居中*/
        }
    </style>
</head>
<body>
    <table>
        <caption><h2>用户信息展示表</h2></caption>
        <tr>
            <td>ID</td>
            <td>用户名</td>
            <td>密码</td>
            <td>性别</td>
            <td>年龄</td>
            <td>简介</td>
        </tr>
        {% for user in userData %}
        <tr>
            <td>{{ user.id }}</td>
            <td>{{ user.username }}</td>
            <td>{{ user.password }}</td>
            <td>{{ user.sex }}</td>
            <td>{{ user.age }}</td>
            <td>{{ user.info }}</td>
        </tr>
        {% endfor %}
    </table>
</body>
</html>
  1. 测试网址 http://127.0.0.1:8000/user/
屏幕快照 20191216 下午5.13.52.png
屏幕快照 20191216 下午5.13.52.png
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、概述
  • 二、模板存放目录
  • 三、将templates标记为模板文件夹
  • 四、配置模板目录
  • 五、定义模板 index.html
  • 六、展示所有用户
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档