【Django】模板语言

Django-模板语言template

一 、模版

一、模版的组成

   HTML代码+逻辑控制代码

二、逻辑控制代码的组成

1  变量(使用双大括号来引用变量)

    {{var_name}}

2  标签(tag)的使用(使用大括号和百分比的组合来表示使用tag)

    {%load staticfiles%}

3 过滤器(filter)的使用

    {{ship_date|date:"Fj,Y"}}  ,ship_date变量传给data过滤器,date过滤器通过使用"FJ,Y"这几个参数来格式化日期数据。"|"代表类似Unix命令中的管道操作。

三 、常用标签

1、{%if%}  的使用

      可以使用你的and,or,not来组织的逻辑。但不允许and和or同时出现在条件语句中。新版本中已经支持了                 {%elif%} 这样的用法。

2、{% for %} 的使用

       用来循环一个序列, 还可以使用reserser关键字来进行倒序遍历,一般可以先用if语句判断序列是否为空,再进行遍历;还可以使用empty关键字来进行为空时的跳转

        

3  {%csrf_token%}

     用于生成csrf_token的标签,用于防治跨站攻击验证。

     注意如果你在view的index里用的是render_to_response方法,此时标签由于没有上下文的关系所以没有效果,需要:

     

   或者直接使用render。

   其实,这里是会生成一个input标签,和其他表单标签一起提交给后台的。

4   {% load %}: 加载标签库

5   {% url %}:  引用路由配置的地址

     

6   {% with %}:用更简单的变量名替代复杂的变量名

     

7   {% verbatim %}: 禁止render  

{% verbatim %}
{{ hello }}
{% endverbatim %}

四 、常用过滤器

   1  add          :   给变量加上相应的值

   2  addslashes:    给变量中的引号前加上斜线

   3  capfirst     :    首字母大写

   4  cut           :   从字符串中移除指定的字符

   5  date         :   格式化日期字符串

   6  default     :   如果值是False,就替换成设置的默认值,否则就是用本来的值

   7  default_if_none:如果值是None,就替换成设置的默认值,否则就使用本来的值

 

原文地址:https://www.cnblogs.com/XJT2018/p/10512662.html