Django模板语言 Tags使用详解

 更新时间:2019年09月09日 08:49:25   作者:信奉上帝的小和尚  
这篇文章主要介绍了Django模板语言 Tags使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

Tags

# 普通for循环

<ul>
{% for user in user_list %}
  <li>{{ user.name }}</li>
{% endfor %}
</ul>

for循环可用的一些参数:

Variable Description
forloop.counter 当前循环的索引值(从1开始)
forloop.counter0 当前循环的索引值(从0开始)
forloop.revcounter 当前循环的倒序索引值(从1开始)
forloop.revcounter0 当前循环的倒序索引值(从0开始)
forloop.first 当前循环是不是第一次循环(布尔值)
forloop.last 当前循环是不是最后一次循环(布尔值)
forloop.parentloop 本层循环的外层循环

for ... empty

# 如果user_list 里面元素为0个的时候执行 empty

<ul>
{% for user in user_list %}
  <li>{{ user.name }}</li>
{% empty %}
  <li>空空如也</li>
{% endfor %}
</ul>

if判断

# if,elif和else
{% if user_list %}
 用户人数:{{ user_list|length }}
{% elif black_list %}
 黑名单数:{{ black_list|length }}
{% else %}
 没有用户
{% endif %}
# 当然也可以只有if和else

{% if user_list|length > 5 %}
 七座豪华SUV
{% else %}
  黄包车
{% endif %}

# if语句支持 and 、or、==、>、<、!=、<=、>=、in、not in、is、is not判断。

with

# 定义一个中间变量,多用于给一个复杂的变量起别名。

# 注意等号左右不要加空格。

{% with total=business.employees.count %}
  {{ total }} employee{{ total|pluralize }}
{% endwith %}

# 或

{% with business.employees.count as total %}
  {{ total }} employee{{ total|pluralize }}
{% endwith %}

csrf_token

这个标签用于跨站请求伪造保护。

在页面的form表单里面写上{% csrf_token %}

注意事项

Django的模板语言不支持连续判断,即不支持以下写法:

{% if a > b > c %}
...
{% endif %}

Django的模板语言中属性的优先级大于方法

def xx(request):
  d = {"a": 1, "b": 2, "c": 3, "items": "100"}
  return render(request, "xx.html", {"data": d})

如上,我们在使用render方法渲染一个页面的时候,传的字典d有一个key是items并且还有默认的 d.items() 方法,此时在模板语言中:

{{ data.items }}

默认会取d的items key的值。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Python3开发环境搭建详细教程

    Python3开发环境搭建详细教程

    这篇文章主要介绍了Python3开发环境搭建详细教程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-06-06
  • 一文教你用Pyecharts做交互图表

    一文教你用Pyecharts做交互图表

    Echarts 是一个由百度开源的数据可视化,凭借着良好的交互性,精巧的图表设计,得到了众多开发者的认可,本文介绍了Pyecharts交互图表,感兴趣的可以了解一下
    2021-05-05
  • python实现自动化脚本编写

    python实现自动化脚本编写

    自动化在很多时候是很方便的,本文以修改用户名密码单元为案例,编写测试脚本。完成修改用户名密码模块单元测试,感兴趣的可以了解一下
    2021-06-06
  • Python tkinter 列表框Listbox属性详情

    Python tkinter 列表框Listbox属性详情

    这篇文章主要介绍了Python tkinter 列表框Listbox属性详情,列表框控件显示多行文本,用户可以选中一行或者多行。所有的文本只能使用一种字体,不能混合使用多种字体
    2022-07-07
  • python 解决Windows平台上路径有空格的问题

    python 解决Windows平台上路径有空格的问题

    这篇文章主要介绍了python 解决Windows平台上路径有空格的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • python动态加载技术解析

    python动态加载技术解析

    这篇文章主要介绍了python动态加载技术解析,说简单点就是,如果开发者发现自己的代码有bug,那么他可以在不关闭原来代码的基础之上,动态替换模块替换方法一般用reload来完成,需要的朋友可以参考下
    2023-07-07
  • 利用python模拟sql语句对员工表格进行增删改查

    利用python模拟sql语句对员工表格进行增删改查

    这篇文章主要给大家介绍了关于利用python模拟sql语句实现对员工表格进行增删改查的相关资料,文中介绍了详细的需求以及示例代码,对大家的理解和学习具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-07-07
  • python远程连接服务器MySQL数据库

    python远程连接服务器MySQL数据库

    这篇文章主要为大家详细介绍了python远程连接服务器MySQL数据库,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-07-07
  • Python中的with...as用法介绍

    Python中的with...as用法介绍

    这篇文章主要介绍了Python中的with...as用法介绍,本文直接给出用法实例,需要的朋友可以参考下
    2015-05-05
  • Python 的Json 模块编码详解

    Python 的Json 模块编码详解

    这篇文章主要为大家介绍了Python 的Json 模块编码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助<BR>
    2021-11-11

最新评论