django渲染高阶

08.16自我总结

django渲染高阶

一.利用母版渲染

1.创建母版文件

如:stamper.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        {% block css %}
        {% endblock %} #写css
    </style>
</head>
<body>
    {% block data %}
    {% endblock %}    #存放内容
</body>
    {% block js %}  #写js
    {% endblock %}
</html>

可以创建无数个block

2.导入模板

{% extends stamper.html %} #母版名称
{% block css %}
 #放在原母版的基础上进行渲染
{% endblock %} #写css

二.一部分文件渲染

1.组件

xx.html

<form action="">
    <input type="text" class="word-input">
    <button class="word-button"> 提交</button>
</form>

2.导入组件

{% include 'xx,html' %}

注意:这里导入多个相同的内容会出现多个内容

三.函数渲染

不建议大家在模板中使用函数, 因为会降低模板的渲染效率, 建议大家在视图处理函数中直接处理, 然后渲染即可

1.内置函数渲染

使用方法:

{{后台传输的内容|内置函数}}

2.自定义函数渲染

1.在app中创建templatetags目录

2.在上述的目录中创建 xxx.py

3.在xxx.py中

from django import template

register = template.Library()

@register.filter
def my_filter(val, args):
    return val + args

@register.simple_tag
def my_upper(val, args, args1):
    return val + args + args1

4.在html中

{%load xxx %}

- simple_filter
{{name | my_filter:'xxxxx'}}

- simple_tag
{%my_upper "zekai" "sss" 'dsadsadsa'%}
posted @ 2019-08-16 19:32  小小咸鱼YwY  阅读(578)  评论(0编辑  收藏  举报