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 ...
随机推荐
- Escaping Closures 两点:本质是生命周期标示符
1.block需要(拷贝)保存: 2.block引用的环境变量需要处理. 相当于oc中的copy block. Escaping Closures A closure is said to escap ...
- word-spacing和letter-spacing区别
word-spacing:单词与单词间的间距 letter-spacing:字母与字母间的间距
- 最适合初学者的Linux运维学习教程2018版
Linux运维工程师是一个新颖岗位,现在非常吃香,目前从行业的角度分析,随着国内软件行业不断发展壮大,越来越多复杂系统应运而生,为了保证系统稳定运行,必须要有足够多的Linux运维工程师.维护是软件生 ...
- php第十二节课
练习 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.o ...
- uva340 Master-Mind Hints (UVA - 340)
题目简要 题目意思很简单每个测试都由原题目在第一行,然后后面的都是去猜的答案,如果猜测的位置正确那么输出的结果的数对里面的第一个数就加一,如果仅答案正确(原题目里有这个数,但是位置不一样)那么就在输出 ...
- collections、random、hashlib、configparser、logging模块
collections模块 在内置数据类型(dict.list.set.tuple)的基础上,collections模块还提供了几个额外的数据类型:Counter.deque.defaultdict. ...
- postgresql数据库部署
运维开发技术交流群欢迎大家加入一起学习(QQ:722381733) 一.postgresql数据库部署 1.前往postgresql安装包的目录(这里我部署的是10.5的版本) [root@web1 ...
- iptables简单了解
简介 Iptables是unix/linux自带的一款优秀且开源的基于包过滤的防火墙工具. 怎么用 可以用来做主机防火墙. 可以做局域网共享上网. 可以做ip及端口映射. Iptables工作流程 i ...
- 对vuex的浅解
vuex是什么? 官网的解释是 Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化.Vuex 也 ...
- javascript 闭包笔记
先来解释一下闭包: 1.闭包就是函数嵌套函数 2.内部函数可以引用外部函数的参数和变量 3.参数和变量不会被垃圾回收机制所收回( 垃圾回收机制就是用完变量之后就在内存中释放 ) 使用闭包的好处: ...