template

Posted tcpblog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了template相关的知识,希望对你有一定的参考价值。

今日内容:

一:  模式:
MVC:   model(模型:存取数据) + view(视图: 信息展示) + controller(逻辑控制) //
MTV :借鉴MVC:  model(模型:  存取数据) + templates(模板: 展示信息) + views(业务逻辑)

二: 模板的基本用法
    1, {{变量}}  >>> 获取变量的属性,方法
    2,{% for/if/  %}
    3, 过滤器 {{  value|filter_name:参数 }}
        内置: default 提供默认值   {{kong|default:‘nothing‘}}
               date日期格式化   {{now|date:‘Y-m-d H:i:s’}}
                                settings设置全局日期格式化
                                USE_L10N = False
                                DATATIME_FORMAT = Y-m-d H:i:s’
               safe: 不进行转义:告诉django内容安全, 原样放上去, 不进行字符串化
        自定义: filter
              1. 在APP下创建一个叫templatetags的python包, 不能变, 必须是包,名字也不能变
              2. 在包中创建一个py文件,for E:  myfilters
              3.  py文件中写代码
                  导入模板: from django import template
                            register = template.Library() # 变量名固定写法
                  写函数@register.filter  # 必须加这个装饰器
                        def add_dsb(value, arg): # 只能最多传一个参数
                            return ‘{}-{}‘.format(value, arg)
              模板中导入文件, {% load my_filter %}
              使用:  {{ name|add_dsb:‘very_dsb‘ }}

    4.标签:
        for: 循环
            forloop.counter:  当前循环的索引值(从1开始)
            forloop.counter0:  当前循环的索引值(从0开始)
            forloop.reverconter: 当前循环的倒序索引值(从1开始)
            forloop.reverconter0: 当前循环的倒序索引值(从1开始)
            forloop.first: 循环第一次》》布尔值
            forloop.last: 循环是不是最后一次: 》》布尔值
            forloop.parentloop: 本层本次循环时候外出循环字典属性



        {{% csrf_token %}  : 在form表达中添加这个可以提交POST请求
        simple_tag : 自定义filter
        定义:      @register.simple_tag(name="plus")
                    def plus(a, b, c):
                    return "{} + {} + {}".format(a, b, c)
        使用: {% load app01_demo % } # 导入
                {# simple tage #}>>>  { % plus ‘1‘ ‘2‘ ‘3‘  % }

    5. 母版 和继承:
        一个普通的html文本, 将多个页面公共的内容提取出来, 在页面定义多个block
        a:注意事项:
            {% extends ‘base.html’ %}  必须写在第一行, 上面不写内容
        b.  要修改的内容写在block标签中, 写在外面不显示
        c. {%  extends ‘base.html‘ %}  ‘文件必须带上引号, 否则可能当作变量‘
        d. 定义多个block ,  定义CSS JS 两个引入标签

    6. 组件:  把多个页面公用的html代码放在一个html文件中 》》》组件  nav.html
        使用方法:  {%  include ‘nav.html‘ %}

    7. 静态文件
            {% load static  %} :导入别名路径
            <img src="{% static "images/hi.jpg" %}" alt="Hi!" />


            {% static ‘静态文件相对路径‘  %}   ——》获取到别名, 后面紧跟参数进行拼接

            {% get_static_prefix %}plugins/bootstrap/css/bootstrap.css  # 获取别名

    8 . 自定义inclusion_tag:  可以传递多个参数

  

以上是关于template的主要内容,如果未能解决你的问题,请参考以下文章

Xcode中的变量模板(variable template)的用法

7-微信小程序 模板(template)

微信小程序开发--模板(template)使用,数据加载,点击交互

微信小程序开发之--"template模板“的应用

vue —— VSCode代码片段

vue —— VSCode代码片段