码迷,mamicode.com
首页 > 编程语言 > 详细

python+django_2

时间:2020-06-15 17:43:17      阅读:58      评论:0      收藏:0      [点我收藏+]

标签:let   reverse   last   双引号   first   提交数据   count   files   默认值   

Django 模板标签
1变量 view:{"HTML变量名" : "views变量名"}HTML:{{变量名}}:
def runoob(request):
views_name = "菜鸟教程"
return render(request,"runoob.html", {"name":views_name})
<p>{{ name }}</p>

2列表:html可以用 . 索引下标取出对应的元素
def runoob(request):
views_list = ["菜鸟教程1","菜鸟教程2","菜鸟教程3"]
return render(request, "runoob.html", {"views_list": views_list})
<p>{{ views_list }}</p> # 取出整个列表
<p>{{ views_list.0 }}</p> # 取出列表的第一个元素

3字典 html中可以用 .键 取出对应的值
def runoob(request):
views_dict = {"name":"菜鸟教程"}
return render(request, "runoob.html", {"views_dict": views_dict})
<p>{{ views_dict }}</p>
<p>{{ views_dict.name }}</p>

4过滤器 {{ 变量名 | 过滤器:可选参数 }}
{{ name|lower }} :{{ name }} 变量被过滤器 lower 处理后,文档大写转换文本为小写。
{{ my_list|first|upper }} 将my_list第一个元素并将其转化为大写。
{{ bio|truncatewords:"30" }} 显示变量 bio 的前30个词
addslashes : 添加反斜杠到任何反斜杠、单引号或者双引号前面。
date : 按指定的格式字符串参数格式化 date 或者 datetime 对象 如{{ time|date:"Y-m-d" }}
length : 返回变量的长度,返回对象的长度,适用于字符串和列表。字典返回的是键值对的数量,集合返回的是去重后的长度。。如{{ name|length}}
default:为变量提供一个默认值。列如{{ name|default:"666" }},变量name为空时,返回默认值666
filesizeformat:以更易读的方式显示文件的大小(即‘13 KB‘, ‘4.1 MB‘, ‘102 bytes‘等)如{{ num|filesizeformat}}
truncatechars:如果字符串包含的字符总个数多于指定的字符数量,那么会被截断掉后面的部分。截断的字符串将以 ... 结尾。如{{ views_str|truncatechars:2}}
safe:将字符串标记为安全,不需要转义。要保证 views.py 传过来的数据绝对安全,才能用 safe。和后端 views.py 的 mark_safe 效果相同。如{{ views_str|safe }}

if/else 标签:
{% if condition %}
... display
{% endif %}

{% if condition1 %}
... display 1
{% elif condition2 %}
... display 2
{% else %}
... display 3
{% endif %}
for 标签:
<ul>
{% for athlete in athlete_list %}
<li>{{ athlete.name }}</li>
{% endfor %}---正向取数
</ul>
{% for athlete in athlete_list reversed %}
...
{% endfor %}---反向迭代
{% for i,j in views_dict.items %}
{{ i }}---{{ j }}
{% endfor %}---遍历字典

在 {% for %} 标签里可以通过 {{forloop}} 变量获取循环序号。
forloop.counter: 顺序获取循环序号,从 1 开始计算
forloop.counter0: 顺序获取循环序号,从 0 开始计算
forloop.revcounter: 倒叙获取循环序号,结尾序号为 1
forloop.revcounter0: 倒叙获取循环序号,结尾序号为 0
forloop.first(一般配合if标签使用): 第一条数据返回 True,其他数据返回 False
forloop.last(一般配合if标签使用): 最后一条数据返回 True,其他数据返回 False

for嵌套使用 {% for %} 标签:

{% for athlete in athlete_list %}
<h1>{{ athlete.name }}</h1>
<ul>
{% for sport in athlete.sports_played %}
<li>{{ sport }}</li>
{% endfor %}
</ul>
{% endfor %}
ifequal/ifnotequal 标签:
{% ifequal %} 标签比较两个值,当他们相等时,显示在 {% ifequal %} 和 {% endifequal %} 之中所有的值


csrf_token 用于form表单中,作用是跨站请求伪造保护。
如果不用{% csrf_token %}标签,在用 form 表单时,要再次跳转页面会报403权限错误。
用了{% csrf_token %}标签,在 form 表单提交数据时,才会成功。

python+django_2

标签:let   reverse   last   双引号   first   提交数据   count   files   默认值   

原文地址:https://www.cnblogs.com/xiaonannan-001/p/13132092.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!