django模板使用


概述

模板由两部分组成,HTML代码,逻辑控制代码,作用:快速生成HTML页面,优点:模板的设计实现了业务逻辑与现实内容的分离


定义模板

挖坑与继承

模板继承可以减少页面的内容的重复定义,实现页面的重用,在父模板中预留区域,子模板去填充。

block标签

父html页面挖坑

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    {% block content %}
    
    {% endblock %}
</body>
</html>

子html页面继承

    {% extends 'father.html' %}

    {% block content %}
        <!--写子模板的内容,会重写父模板,显示子模板内容-->
        <!--不写内容调用父模板用super-->
        {{ block.super }} 
    {% endblock %}

if标签

    {% if 表达式1 %}
        {# 语句1 #}
    {% elif %}
        {# 表达式2 #}
    {% else %}
        {# 表达式3#}
    {% endif %}

for标签

    {% for 变量 in 迭代对象 %}    
        {# 语句1 #}
    {% empty %}
        {# 语句2 #}
    {% endfor %}

comment标签

    {% comment %}
        {# 多行注释 #}
        {# {# 单行注释 #} #}
    {% endcomment %}

ifequal、ifnotequal标签

    {% ifequal a b %}
        {# a,b是否相等#}
    {% endifequal %}
    
    {% ifnotequal a b %}
        {# 判断a,b是否不等 #}
    {% endifnotequal %}

url标签

    {% url 'namespace:name' %}
        {# 反向解析 #}

csrf_token标签

    {% csrf_token %}
        {# 用于跨站请求伪造保护 #}

autoescape标签

    {% autoescape off %}
        {{code}}
        {# 用于HTML转义 #}
    {% endautoescape %}


过滤器

lower

    {{变量|lower}}
    {# 将变量转换为小写显示#}

upper

    {{变量|upper}}
    {# 将变量转换为大写显示#}

join

    {{str|join:'*'}}
    {# 将传过来的str用*连接起来#}
    

date

    {{date|date:'Y-m-d'}}
    {# 设置日期格式 #}

html转移

    {{code|escape}}
    {{code|safe}}

加减乘除p>

    {{num|add:10}}
        {# 加10 #}
    {{num|add:-5}}
        {# 减5 #}
    {% widthratio num 1 5 %}
        {# 乘5 #}
    {% widthratio num 1 5%}
        {# 除5#}
    

CSRF

跨站请求伪造:某些恶意网站包含链接、表单、按钮、js,利用登陆用户在浏览器中认证,从而攻击服务.

防止CSRF:在settings.py文件中的MIDDLEWARE增加'django.middleware.csrf.CsrfViewMiddleware'

转载于:https://www.cnblogs.com/xcool/p/9900884.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值