python_Django07----Template

模板

在 Django 框架中,模板是可以帮助开发者快速生成呈现给用户页面的工具

模板的设计方式实现了我们 MVT 中 VT 的解耦,VT有着  N:M 的关系,一个 V 可以调用任意 T ,一个 T 可以供任意 V 使用

模板处理分为两个过程
   加载和渲染

模板主要有两个部分
HTML 静态代码
动态插入的代码段(挖坑,填坑)

模板中的动态代码段除了做基本的静态填充,还可以实现一些基本的运算,转换和逻辑
模板中的变量: 视图传递给模板的数据
遵守标识符规则
语法 {{ var }}
如果变量不存在,则插入空字符串

模板中的点语法   grades grade
字典查询
属性或者方法     grade.gname
索引 grades.0.gname
模板中的小弊端,调用对象的方法,不能传递参数
模板中的标签
语法  {{ tag }}
作用  1.加载外部传入的变量
    2.在输出中创建文本
    3.控制循环或者逻辑

if
格式:{% if  表达式 %}
                        语句
              {%   endif   %}

			  {% if  表达式 %}
                        语句
               {%  else  %}
                		语句
              {%   endif   %}

			   {% if 表达式 %}
			   		语句
			   {% elif 表达式 %}
			   		语句
			   {% endif %}

 ## 结构标签
 block
 		块
 		用来规划我们的布局(挖坑)
 		首次出现代表规划
 		第二次出现,代表填充以前的规划
 		第三次出现,代表填充以前的规划,默认动作是覆盖
 							如果不想覆盖,可以添加 {{ block.super }}
 							这样就实现了增量式操作
 						

{​{ title }}

{% block header %}
{% endblock %}

{% block banner %}
{% endblock %}

{% block content %}
{% endblock %}

{% block footer %}
{% endblock %}

```

extends
继承
可以获取父模板中的所有结构

{% extends "base.html" %}
{% block header %}
    <h1>hahaahahahah</h1>
{% endblock %}

block + extends
化整为零
include
包含
可以将页面作为一部分,嵌入到其他页面中
include + block
由零聚一

{% extends "home.html" %}
{% block content %}
    qiang da
{% endblock %}
{% block header %}
    {{ block.super }}
    fugai
{% endblock %}
{% block footer %}
    {% include 'gooter.html' %}
{% endblock %}

三个标签也可以混合使用
使用 block + extends 搞定的,就尽量不要使用 include

									
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值