内容简介:实例一:显示一个基本的字符串到网页上quicktool/view.py文件修改视图函数index(),渲染一个home.html模板,在视图中传递一个字符串名称是 string 到模板 home.htmlquicktool(应用app)下创建一个templates文件夹(模板),在templates下创建一个home.html
说明:mytestsite是django框架下的项目,quicktool是mytestsite项目中的应用
一般的变量之类的用 {{ }}(变量),功能类的比如循环、条件判断是用 {% %}(标签) 复制代码
实例一:显示一个基本的字符串到网页上
quicktool/view.py文件修改视图函数index(),渲染一个home.html模板,在视图中传递一个字符串名称是 string 到模板 home.html
def index(request): string = u'这是一个由Django2.1.7版本写出的视图内容!' return render(request, 'home.html',{'string':string}) 复制代码
quicktool(应用app)下创建一个templates文件夹(模板),在templates下创建一个home.html
<!DOCTYPE html> <html> <head> <title>学习Django</title> </head> <body> {{ string }} </body> </html> 复制代码
实例二:用for循环显示一个基本的List内容
quicktool/view.py文件修改视图函数index(),渲染一个home.html模板,在视图中传递一个List到模板home.html
def index(request): TutorialList = ["HTML", "CSS", "jQuery", "Python", "Django"] return render(request, 'home.html',{'TutorialList':TutorialList}) 复制代码
quicktool(应用app)下创建一个templates文件夹(模板),在templates下创建一个home.html
<!DOCTYPE html> <html> <head> <title>学习Django</title> </head> <body> 语言类型列表: {% for i in TutorialList %} {{ i }} {% endfor %} </body> </html> 复制代码
实例三:显示字典中的内容
quicktool/view.py文件:
def index(request): info_dict = {'site': u'本地环境', 'content': u'Django技术'} return render(request, 'home.html', {'info_dict': info_dict}) 复制代码
quicktool/templates/home.html文件:
开发环境: {{ info_dict.site }} 学习内容: {{ info_dict.content }} 复制代码
quicktool/templates/home.html文件(遍历字典):
{% for key, value in info_dict.items %} {{ key }}: {{ value }} {% endfor %} 复制代码
实例四:进行条件判断和for 循环
quicktool/view.py文件:
def home(request): List = map(str, range(100))# 一个长度为100的 List return render(request, 'home.html', {'List': List}) 复制代码
quicktool/templates/home.html文件:
{% for item in List %} {{ item }}, {% endfor %} 复制代码
打印到页面的最后一个数字有逗号,使用forloop.last判断是否为最后一项,不是最后一项就加逗号,是最后一项就不加
{% for item in List %} {{ item }}{% if not forloop.last %},{% endif %} {% endfor %} 复制代码
forloop的一些变量
当列表中可能为空值时用for...empty...
<ul> {% for athlete in athlete_list %} <li>{{ athlete.name }}</li> {% empty %} <li>抱歉,列表为空</li> {% endfor %} </ul> 复制代码
实例五:逻辑操作
① ==, !=, >=, <=, >, < (注意:比较符号前后必须有至少一个空格!)
{% if var >= 90 %} 成绩优秀 {% elif var >= 80 %} 成绩良好 {% elif var >= 70 %} 成绩一般 {% elif var >= 60 %} 需要努力 {% else %} 不及格 {% endif %} 复制代码
②and, or, not, in, not in
# 判断 num 是不是在 0 到 100 之间: {% if num <= 100 and num >= 0 %} num在0到100之间 {% else %} 数值不在范围之内! {% endif %} 复制代码
实例六:获取当前用户、当前网址、当前GET参数
①获取当前用户
{% if request.user.is_authenticated %} {{ request.user.username }},您好! {% else %} 请登陆,这里放登陆链接 {% endif %} 复制代码
②获取当前网址
{{ request.path }} 复制代码
③获取当前GET参数
{{ request.GET.urlencode }} 复制代码
合并到一起用的例子
<a href="{{ request.path }}?{{ request.GET.urlencode }}&delete=1">当前网址加参数 delete</a> 复制代码
网页上的这个a标签href=“/?&delete=1”,每点击一次标签a网页的地址新增参数?delete=1&delete=1...
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 053.Python前端Django框架模板层
- 3天学写mvvm框架[二]:模板解析
- gojs 流程图框架-编辑类模板(二)
- Flask框架从入门到精通之模板表单(二十)
- Flask框架从入门到精通之模板宏(十九)
- 动手搭建后端框架-Velocity模板引擎的应用
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。