Django视图层、模板层
过滤器方法
- upper 大写方式输出
- add 给value加上一个数值
- capfirst 第一个字母大写
- center 输出指定长度的字符串,把变量居中
- cut 删除指定字符串
- date 格式化日期
- default 如果值不存在,则使用默认值代替
- length 返回列表中元素的个数或字符串长度
- length_is 检查列表,字符串长度是否符合指定值
标签的方法
for标签
{% for 临时遍历 in 序列%}....{%endfor%}
- forloop.counter 当前循环的索引值(从1开始)
- forloop.counter0 当前循环的索引值(从0开始)
- forloop.revcounter 当前循环的倒序索引(从1开始)
- forloop.revcounter0 当前循环的倒序索引(从0开始)
- forloop.first 当前循环是不是第一次循环(布尔值)
- forloop.last 当前循环是不是最后一次循环(布尔值)
for...empty标签
如果变量名不存在或者内容为空的时候显示{%empty%}中的内容,否则不执行
{% for game in games%}
...{%empty%}...{%endfor%}
...if标签
(1)if 标签
格式:
{% if 判断条件 %}
… {% endif %} 注: if 语句支持 and、or、==、<、>、!=、<=,>=,in、not in、is、is not判断
(2)if … else 标签
格式:
{% if name_length|length > 6 %}
…
{% else %}
…
{% endif %}
(3).if…elif…else 标签
格式:
{% if name_length|length > 6 %}
…
{% elif age == 20 %}
…
{% else %}
…
{% endif %}
CBV流程
1.首先要编写自定义的视图类,必须继承View类。
2.然后在路由中配置URL调用视图类的as_View方法,也就是view类的as_view方法
3.as_view是一个闭包函数,返回的是view方法。
4.view方法先实例化类视图对象,然后给类视图对象赋值,最后调用dispatch方法
5.dispatch方法先判断该请求方式是否在它所有的方法中,然后通过反射getattr的请求方式获取指定的请求方法(也就是对应的函数),并执行相应的代码块
Django请求生命周期流程图
自定义过滤器,标签的步骤
- 在settings中的INSTALLED_APPS添加当前app的名字,不然django无法找到自定义的过滤器或标签
- 在文件夹app01中创建子文件templatetags
- 在templatetags新建任意py文件,在该文件中自定义过滤器或标签
- 自定义过滤器或标签必须重新启动django生效
Django视图层、模板层的更多相关文章
- day 45 Django 的初识2 路由层,视图层,模板层
前情提要: 今天继续学习Django 的内容, 今天主要和渲染相关 1>配置路由 >2:写函数 >3 指向url 一:路由层 1:配置静态支持文件 1:路由层的简单配置 >dj ...
- web框架开发-Django视图层
视图函数 一个视图函数,简称视图,是一个简单的Python 函数,它接受Web请求并且返回Web响应.响应可以是一张网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一张图片. . ...
- Django视图层
本文目录 1 视图函数 2 HttpRequest对象 3 HttpResponse对象 4 JsonResponse 5 CBV和FBV 6 简单文件上传 回到目录 1 视图函数 一个视图函数,简称 ...
- django学习笔记-模板层
模板层 将Python嵌入到HTML中. 模板简介 将HTML硬解码到视图并不是那么完美原因如下: 对页面设计时也需要对python代码进行相应的修改,模板可以不就行python代码修改的情况下变更设 ...
- Django学习之模板层
三板斧 render,HttpResponse,redirectrender返回一个HTML页面,并且还能够给该页面传数据render内部原理: from django.template import ...
- Django基础之模板层
内容概要 模板层(模板语法) 模板语法传值模板语法过滤器(内置方法)模板语法标签(流程控制)自定义过滤器和标签(了解) 模板的导入与继承(面向对象) 内容详细 1 模板层之模板语法传值 http ...
- django视图层(views)
1.视图层概念 视图函数,其实就是一个简单的函数,它接收web请求并返回web响应(响应的可以是一个html,一个重定向,一个xml文档等等) 每个视图函数都负责返回一个HttpResponse对象. ...
- django——视图层
1. 视图函数 一个视图函数,简称视图,是一个简单的Python 函数,它接受Web请求并且返回Web响应.响应可以是一张网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一张图片. ...
- Django 视图层
URL映射 1.分布式url映射 include()函数提供分布式url映射功能,使URL映射可以被编写在多个url.py文件中 from django.conf.urls import url fr ...
- DjangoMTV模型之视图层views及模板层template
Django视图层中views的内容 一个视图函数,简称视图,是一个简单的Python 函数,它接受Web请求并且返回Web响应.响应可以是一张网页的HTML内容(render),也可以是一个重定向( ...
随机推荐
- 在vue项目中播放m3u8格式视频
前言:最近公司在做一个线上会议的项目,要求后台网站播放m3u8格式的视频,查找部分资料,总结一下,方便后边查阅 1.在vue工程中安装以下依赖: cnpm install video.js --sa ...
- CodeForces 1144A
原题链接:https://vjudge.net/problem/CodeForces-1144A #include<bits/stdc++.h> using namespace std; ...
- ssh排错思路
telnet远程22端口refused 先netstat -utnlp 看一下22端口监听状态(一般都不在监听) 然后systemctl restart sshd 如果有报错,执行sshd - ...
- Java基本语法--控制台输入(Scanner类)
通过Scanner类获取用户输入时,控制台会一直等待用户的输入,可以输入不同类型的值.本篇博客主要讲解从控制台输入值,即Scanner类的使用方法. Api文档中关于Scanner类的构造方法 键盘输 ...
- SimpleDateFormat中YYYYmmDDhhMMss大小写问题-获取不到正确时间以及常见的格式串
1.问题解决: SimpleDateFormat sf = new SimpleDateFormat("YYYYmmDDhhMMss");String transTime = &q ...
- 数字输出精度 - C语言
1. 浮点型/双精度浮点型 double a=1234.5678; printf("%8.2lf\n",a);// 小数点前的数表示总位数,小数点也算一位 printf(" ...
- msfconsole启动失败并报错`not_after=': bignum too big to convert into `long'的解决方法
1.启动msfconsole失败并报如下错误: /usr/share/metasploit-framework/lib/msf/core/payload/android.rb:86:in `not_a ...
- Shashlik Cooking
Long story short, shashlik is Miroslav's favorite food. Shashlik is prepared on several skewers simu ...
- python collections 模块 常用集合
1.nametulpe # tuple 可以表示不变集合 列如坐标 point = (1,1) # 缺点是 只可以通过下标方式访问 #namedtuple是一个函数,它用来创建一个自定义的tuple对 ...
- root xshell登陆Ubuntu
https://www.jianshu.com/p/c8ee39488d2a xshell测试非root用户,可以正常连接,但是root用户仍旧无法访问 解决方法:修改 /etc/ssh/sshd_c ...