Django之模板语言(一)
1.Django的模板语言(简而言之,字符串替换)
1.目前为止已经学过的模板语言:
1.{{ name }} ------>变量
2. for 循环:
{% for i in book_list %}
{{ forloop.counter }}
{{ forloop.last }}
{{ i }}
{% endfor %}
3.if 判断:
{% if 10 > 5%}
要执行的操作
{% else %}
要执行的操作
{% endif %}
4.if 值 in 判断条件:
{% if name in name_list %}
要执行的操作
{% endif % }
案例案例:
url(r'^t_test/',views.template_test)
# Django 模板语言测试代码
def template_test(request):
name = "小黑"
age = 18
name_list = [1, 2, 3, 4, 5, 6]
name_dict = {"first_name": "小黑", "last_name": "小白"}
p1 = Person("Person对象1", 20)
p2 = Person("Person对象2", 25)
p_list = [p1, p2]
return render(
request,
't_test.html',
{
"name": name,
"age1": age,
"name_list": name_list,
"name_dict": name_dict,
"person1": p1,
"person2": p2,
"p_list": p_list
}
)
# 模板语言测试的类
class Person(object):
def __init__(self, name, age):
self.name = name
self.age = age def dream(self):
return "{}在做梦".format(self.name) # 控制对象输出的格式
def __str__(self):
return "<Person Object:{}>".format(self.name) # python2中的方法
def __unicode__(self):
return "<Person Object:{}>".format(self.name)
案例前端:
<h1>这是模板语言测试的案例</h1>
{{ name }}
<hr>
{{ age1 }}
<hr>
{{ bucunzai }}
{{ bucunzai|default:"这个变量并没有传值,使用的是默认值" }}
<hr>
{{ name_list }} {#得到一个列表#}
<ul>
{% for name in name_list %}
<li>name</li>
{% endfor %}
</ul>
{{ name_list.0 }} <hr>
{{ name_dict }}
{{ name_dict.first_name }} | {{ name_dict.last_name }}
<hr>
{{ person1 }}
{{ person1.name }} {{ person1.age}}
{{ person1.dream }} <hr>
{{ p_list }}
{{ p_list.1.name }}
结果:

Django之模板语言(一)的更多相关文章
- Django的模板语言
Django模板系统 官方文档 常用语法 只需要记两种特殊符号: {{ }}和 {% %} 变量相关的用{{}},逻辑相关的用{%%}. 变量 {{ 变量名 }} 变量名由字母数字和下划线组成. ...
- django 更新 模板语言
Django模板系统 官方文档 常用语法 只需要记两种特殊符号: {{ }}和 {% %} 变量相关的用{{}},逻辑相关的用{%%}. 变量 在Django的模板语言中按此语法使用:{{ 变量名 ...
- 第四篇Django之模板语言
Django之模板语言 一 模板的执行 模板的创建过程,对于模板,其实就是读取模板(其中嵌套着模板的标签),然后将Model中获取的数据插入到模板中,最后将信息返回给用户 def current_da ...
- Django之模板语言
一.模板语言介绍 模板语言渲染的整个过程其实就是将html转换成函数,并为该函数提供全局变量,然后执行该函数 二.模板语言的语法 模板中也有自己的语言,该语言可以实现数据展示 # 业务请求处理做的页面 ...
- django的模板语言中一些之前没有用过的小点
1.模板语言中的for循环的最后一个的表示方式 {% for auther in auther_list %} {% if forloop.last %} {# 这里的意思是for循环的最后一个的意思 ...
- Django的模板语言介绍
模板语言: 1.我们先看下在命令行中渲染模板 先导入模块对象 2.渲染一个变量 <p>当前时间:{{ time }}</p> return render(request,&qu ...
- django 中模板语言的各种用法
模板 1.视图中使用模板 模版的创建过程,对于模版,其实就是读取模版(其中嵌套着模版标签),然后将 Model 中获取的数据插入到模版中,最后将信息返回给用户 1.普通方法:HTML被直接硬编码在 P ...
- Django之模板语言(四) ------>Tags
案例1:单层for循环 # Django 模板语言测试代码 def template_test(request): name_list=["张三","李四",& ...
- Django之模板语言(三)------>自定义filter
1.自定义filter: 1.在app01下面新建一个templatetags的python package包. 如果没有app01的话,可以通过命令行在manage中进行创建:python mana ...
随机推荐
- Tomcat Geoserver等服务器 端口号修改
端口号修改是我们经常会用到的,这里整理一下我们常见的服务器端口号修改位置,后面在用到的时候会持续更新 注意:端口号修改服务都需要重启才有效. 1.Tomcat 位置:..\tomcat路径\conf\ ...
- [Usaco2005 Dec]Cleaning Shifts
[Usaco2005 Dec]Cleaning Shifts 给出n段区间,左右端点分别为\(l_i,r_i\),以及选取这段区间的费用\(c_i\),现在要选出若干个区间,使其完全覆盖区间\([m, ...
- 40. 组合总和 II
题目描述: 给定一个数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合. candidates 中的每个数字在每个组合中只 ...
- Windows start
启动一个单独的窗口以运行指定的程序或命令. START ["title"] [/D path] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED] ...
- thinkphp present标签
present标签用于判断某个变量是否已经定义,用法: 大理石平台精度等级 <present name="name"> name已经赋值 </present> ...
- java实现单链表增删改查
package 数据结构算法.链表; /* *定义节点 * 链表由节点构成 */ public class Node<E> { private E e; //数据data private ...
- csp-s模拟100,101T1,T2题解
题面:https://www.cnblogs.com/Juve/articles/11799325.html 我太蒻了只会T1T2 组合: 欧拉路板子?不会呀... 然后打了个优化,防止暴栈 #inc ...
- C++如何判断某一文件是否存在
函数名: access 功 能: 确定文件的访问权限 用 法: int access(const char *filename, int amode); 程序例: #include <stdio ...
- Linux和Windows下ping命令详解
转:http://linux.chinaitlab.com/command/829332.html 一.Linux下的ping参数 用途 发送一个回送信号请求给网络主机. 语法 ping [ -d] ...
- hysbz3676 回文串 回文自动机
回文自动机模板题 头铁了一下午hdu6599,最后发现自己的板有问题 先放这里一个正确性得到基本确认的板,过两天肝hdu6599 #pragma GCC optimize(2) #include< ...