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 ...
随机推荐
- GenericServlet简介和使用
GenericServlet:抽象类 是Servlet接口的抽象类,为Servlet接口中的一些方法做了空实现,只将service()方法作为抽象方法 Servlet代码实现GenericServle ...
- K8S之部署Dashboard
转载声明 本文转载自:ASP.NET Core on K8S深入学习(2)部署过程解析与部署Dashboard 1.Yaml安装 下载yaml文件 wget https://raw.githubuse ...
- CSS——优雅降级和渐进增强
什么是渐进增强(progressive enhancement).优雅降级(graceful degradation)呢? 渐进增强 progressive enhancement: 针对低版本浏览器 ...
- MyEclipse搭建Structs2开发环境
MyEclipse10搭建Strust2开发环境 - 孤傲苍狼 - 博客园https://www.cnblogs.com/xdp-gacl/p/3496242.html
- PAT甲级——A1134 Vertex Cover【25】
A vertex cover of a graph is a set of vertices such that each edge of the graph is incident to at le ...
- PAT甲级——A1117 Eddington Number【25】
British astronomer Eddington liked to ride a bike. It is said that in order to show off his skill, h ...
- Caused by: java.lang.NoSuchMethodError: org.hibernate.engine.spi.SessionFactoryImplementor.getProperties()Ljava/util/Properties;
报错信息 Error starting ApplicationContext. To display the auto-configuration report re-run your applica ...
- 17.splash_case06_ScrapySplashTest-master
taobao.py # -*- coding: utf-8 -*- from scrapy import Spider, Request from urllib.parse import quote ...
- python字典的常用操作,数据类型划分
一.数据类型划分之一 可分为:可变数据类型,不可变数据类型 不可变数据类型:元祖,布尔值(Bool),数值 int ,字符串 str 可哈希 可变数据类型: list,d ...
- Nvelocity 语法
原文:Nvelocity 语法 1,数字循环 #foreach($i in [0..9]) $i #end 2,dictionary 根据key获取value值 #set($key1=&q ...