Django day06 模版层(一) 变量和深度查询
一.模版语法之变量:
1 - {{ 变量 }} ******重要*******{#这个相当于print了该变量#}
def index(request):
name = 'prince' #字符串
age = 20 #数字类型
ll = [233, 290, 'bp', 'dsb'] #列表
tu = (1, 2, 3) #元组
dic = {'name': 'prince', 'age': 20, 'll': [1, 2, 3, 4]}
# 在模板上相当于执行了test函数,打印了return的结果
def test():
print('prince')
return 'bpcsmdj' # 类和对象
class Person(): # Person 人
def __init__(self, name, age):
self.name = name
self.age = age def get_name(self):
return self.name # 对象 @classmethod
def cls_test(cls):
return 'cls' @classmethod
def stetic_test(cls):
return 'stetic' # 类 prince = Person('prince', 20)
bastard = Person('bastard', 1000) Person_list = [prince, bastard]
Person_dic = {'prince': prince, 'bastard': bastard} 在index.html文件中:
{#模板语言注释:前端看不到{##} {#这个相当于print了该变量#}
<h1>模版语言之变量</h1>
<p>字符串:{{ name }}</p>
<p>数字类型:{{ age }}</p>
<p>列表:{{ ll }}</p>
<p>元组:{{ tu }}</p>
<p>字典:{{ dic }}</p>
{#只写函数名:相当于函数名(),执行该函数#}
<p>函数:{{ test }}</p>
<p>列表套对象:{{ Person_list }}</p>
<p>字典套对象:{{ Person_dic }}</p> # return render(request, 'index.html', {'name': name})
# locals 会把index视图函数内(***全局变量是不可能的***)所有的变量当做参数传到index.html模版里面,打开连接时都能取到
return render(request, 'index.html', locals())
2 - 深度查询:统一都用句点符 " . "
在index.html文件中:
<h1>深度查询</h1>
{#深度查询:统一都用句点符 " . " #}
<p>列表第0和第3个值:{{ ll.0 }} 和 {{ ll.3 }}</p>
<p>字典取值:{{ dic.name }} 和 {{ dic.age }}</p>
<p>对象取数据属性:{{ prince.name }}</p>
<p>对象取绑定给对象的函数属性:{{ prince.get_name }}</p>
{#取得对象都是它们的 return 返回值#}
<p>对象取绑定给类的函数属性:{{ prince.cls_test }}</p>
<p>对象取静态方法:{{ prince.static_test }}</p>
<p>从对象列表中取出prince的年龄:{{ Person_list.0.age }}</p>
{#拓展:字符串也可以用句点符来调用,但是不能调有参数的方法#}
<p>字符串的方法:{{ name.upper }}</p>
Django day06 模版层(一) 变量和深度查询的更多相关文章
- Django day06 模版层(二) 过滤器 标签
一: 模板语言之过滤器: " | " 前后的区分: 前面的是函数的第一个参数, 后面的是python的一个函数, 冒号后面的是第二个参数例: <p>过滤器之默认值:{ ...
- 63、django之模版层(template)
上篇主要介绍了django的MTV模型,主要介绍了视图层之路由配置系统url分发和视图层之视图函数view,本篇主要讲解MTV模型中的模版层template. 模版层(template) 一.模版简介 ...
- django之模版层(template)
上篇主要介绍了django的MTV模型,主要介绍了视图层之路由配置系统url分发和视图层之视图函数view,本篇主要讲解MTV模型中的模版层template. 本篇导论: 模版简介 模版之变量 模版之 ...
- Django之模版层
一.模版简介 你可能已经注意到我们在例子视图中返回文本的方式有点特别,也就是说,HTML被直接硬编码在python代码之中. def current_datetime(request): now = ...
- Django 之模版层
一.模板简介 将前端页面和Python 的代码分离是一种的开发模式. 为此 Django专门提供了模板系统 (Template System,即模板层)来实现这种模式. Django 的模板 = HT ...
- Django之模版层-语法:标签 {% %}
标签 {% %} for循环以及for..empty.. <h4>for标签</h4> {% for i in lis %} <p>{{ i }}</p> ...
- Django的模板层简介
Django的模板层 如果我们想要利用视图函数返回一个页面,一种比较简单的方式是利用HttpResponse()方法返回一个含有html内容的字符串: def current_datetime(req ...
- python 全栈开发,Day70(模板自定义标签和过滤器,模板继承 (extend),Django的模型层-ORM简介)
昨日内容回顾 视图函数: request对象 request.path 请求路径 request.GET GET请求数据 QueryDict {} request.POST POST请求数据 Quer ...
- Django模板自定义标签和过滤器,模板继承(extend),Django的模型层
上回精彩回顾 视图函数: request对象 request.path 请求路径 request.GET GET请求数据 QueryDict {} request.POST POST请求数据 Quer ...
随机推荐
- Math.floor() 与 parseInt()
parseInt()与Math.floor()都能实现数字的向下取整,但是两者存在根本上的差异,1.Math.floor()用于一个数的向下取整,不能解析字符串 <script type=&qu ...
- B.1 接口
几乎所有要学习的接口都位于 System.Collections.Generic 命名空间.图B-1展示了.NET4.5以前主要接口间的关系,此外还将非泛型的 IEnumerable 作为根接口包括了 ...
- 【Linq】标准查询操作符
A.1 聚合 聚合操作符(见表A-1),所有的结果只有一个值而不是一个序列. Average 和 Sum 针对数值 (任何内置数值类型)序列或使用委托从元素值转换为内置数值类型的元素序列. Min 和 ...
- CF51F Caterpillar (边双+树形DP)
题目传送门 题目大意:给你一张n个点m条边的图.每次操作可以把两个点合并成一个(与之相连的边也都要连到新点上).求把图中每个联通块都变成“毛毛虫”的最小操作次数.“毛毛虫”必须是一棵树(可以存在自环) ...
- STM32的USART发送数据时如何使用TXE和TC标志
在USART的发送端有2个寄存器,一个是程序可以看到的USART_DR寄存器,另一个是程序看不到的移位寄存器,对应USART数据发送有两个标志,一个是TXE=发送数据寄存器空,另一个是TC=发送结束. ...
- VS2017git 提交提示错误 Git failed with a fatal error.
具体错误信息:Git failed with a fatal error.error: open("ConsoleApp1/.vs/ConsoleApp1/v15/Server/sqlite ...
- 【codeforces 510D】Fox And Jumping
[题目链接]:http://codeforces.com/contest/510/problem/D [题意] 你可以买n种卡片; 每种卡片的花费对应c[i]; 当你拥有了第i种卡片之后; 你可以在任 ...
- hdu_1036_Average is not Fast Enough_201311021335
Average is not Fast Enough! Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (J ...
- Codeforces Round #305 (Div. 2) C题 (数论)
C. Mike and Frog time limit per test 1 second memory limit per test 256 megabytes input standard inp ...
- 浏览器最小字体小于12px解决方案
<style> p{font-size:10px;-webkit-transform:scale(0.8);} /*这里的数字0.8,是缩放比例,可以根据情况变化.*/ </styl ...