Flask初级(六)flash模板渲染
Project name :Flask_Plan
templates:templates
static:static
继续上篇的模板
我们已经可以静态调用模板,包括继承模板,保证了页面的一致性,但是我们查询的东西,页面还都是在html文件中的。
渲染,就可以让我们把动态的内容,放进静态的模板中。
修改templates/plan.html
{% extends 'base.html' %}
{% block main1 %}
<h1>这是main1提交的新内容{{ name1 }}</h1>
{% endblock %}
{% block main2 %}
<h3>这是main2提交的新内容{{ name2 }}</h3>
{% endblock %}
修改Flask_Plan.py
@app.route('/')
def hello_world():
return render_template('plan.html',name1='测试name1的渲染',name2 ='name2渲染')
就这一行要改的。
访问首页的返回用render_template渲染基于base.html的子模板plan.html,并给其中的两个模板变量赋值。
试试吧。
单个模板变量的渲染不过瘾,我们多搞几个,不用这样写一堆变量传进去。
修改Flask_Plan.py
@app.route('/')
def hello_world():
plan = {
'date': '2017-12-12',
'train': 'T198',
'track': 10,
'start_time': '10:00',
'end_time': '12:00',
'plan_end': '8:30',
'plan_in': '9:30',
'plan_out': '18:00',
'plan_start': '20:40'
}
return render_template('plan.html', **plan)
修改templates/plan.html
{% extends 'base.html' %}
{% block main1 %}
<h1>这是main1提交的新内容{{ name1 }}</h1>
{% endblock %}
{% block main2 %}
<h3>这是main2提交的新内容{{ name2 }}</h3>
{{ train }} <br>
{{ date }}<br>
{{ track }}<br>
{{ start_time }}<br>
{{ end_time }}<br>
{{ plan_end }}<br>
{{ plan_in }}<br>
{{ plan_out }}<br>
{{ plan_start }}<br>
{% endblock %}
我们用**plan这个参数,把plan这个字典传入了模板渲染引擎,在plan.html这个模板中直接使用字典索引来显示值。
使用更多的模板变量。
修改Flask_Plan.py
def hello_world():
class plan(object):
P_end = '8:45'
P_in = '9:30'
W_start = '10:00'
W_end = '12:00'
P_out = '18:00'
P_start = '20:40' p1 = plan() plan = {
'date': '2017-12-12',
'train': 'T198',
'track': 10,
'time': p1, } return render_template('plan.html', **plan)
修改templates/plan.html
{% extends 'base.html' %}
{% block main1 %}
<h1>这是main1提交的新内容{{ name1 }}</h1>
{% endblock %}
{% block main2 %}
<h3>这是main2提交的新内容{{ name2 }}</h3>
{{ date }}
{{ time.P_start }}
{% endblock %}
这次我们引入了类的概念,把time赋值为实例化的plan,在模板中用 time.***来渲染。
我们也可以用字典的嵌套。
修改Flask_Plan.py
@app.route('/')
def hello_world():
class plan(object):
P_end = '8:45'
P_in = '9:30'
W_start = '10:00'
W_end = '12:00'
P_out = '18:00'
P_start = '20:40'
p1 = plan()
plan = {
'train': {
'date': '2017-12-12',
'train': 'T198',
'track': 10,
},
'time': p1,
}
return render_template('plan.html', **plan)
修改templates/plan.html
{% extends 'base.html' %}
{% block main1 %}
<h1>这是main1提交的新内容{{ name1 }}</h1>
{% endblock %}
{% block main2 %}
<h3>这是main2提交的新内容{{ name2 }}</h3>
{{ train.date }}
{{ time.P_start }}
{% endblock %}
字典的嵌套,我们把date ,train ,track嵌套在train中
在模板中使用train.date train.train train.track来渲染。
Flask初级(六)flash模板渲染的更多相关文章
- Flask -- 静态文件 和 模板渲染
静态文件 一般用于存放图片,样式文件(css, js等) 保存位置:包中或者文件所在目录创建一个 static 目录 访问:在应用中使用 /static/...即可访问 , 更好的方式是使用url_f ...
- Flask中的request模板渲染Jinja以及Session
Flask中的request与django相似介绍几个常用的以后用的时候直接查询即可 1.request from flask import request(用之前先引用,与django稍有不同) r ...
- flask学习(九):模板渲染和参数传递
一. 如何渲染模板 1. 模板放在templates文件夹下 2. 从flask中导入render_template函数 3. 在视图函数中,使用render_template函数,渲染模板 注意:只 ...
- flask框架下的jinja2模板引擎(1)(模板渲染)
#转载请留言联系 模板是什么? 在 flask 框架中,视图函数有两个作用:处理业务逻辑和返回响应内容.在大型应用中,把业务逻辑和表现内容放在一起,会增加代码的复杂度和维护成本.模板作用即是承担视图函 ...
- Flask(1):基本示例、配置文件、路由、请求和响应、模板渲染
Flask的特点: - pip install flask - 短小精悍.可扩展性强的 web框架 注意:上下文管理机制 - 依赖 wsgi:werkzeug Flask的简单示例: from fla ...
- Python Web Flask源码解读(三)——模板渲染过程
关于我 一个有思想的程序猿,终身学习实践者,目前在一个创业团队任team lead,技术栈涉及Android.Python.Java和Go,这个也是我们团队的主要技术栈. Github:https:/ ...
- Flask模板渲染
目录 Flask模板渲染 Jinja2模板引擎简介 模板 Jinja2 模板变量 变量 控制结构 宏,类似Python代码中的函数 模板继承 包含(Include) 过滤器 链式调用 常见内建过滤器 ...
- (4)Flask项目模板渲染初体验
一.准备静态资源 将项目使用到的静态资源拷贝到static目录 二.创建前台首页html 创建templates/home/home.html页面,内容包含导航和底部版权两部分,中间内容区域为模板标签 ...
- Flask 的模板渲染
Flask 的模板渲染 渲染模板语言和django很像,都是用{{}},{%%} 注意点: 1 flask给模板传值,render_template("index.htm",use ...
随机推荐
- Java8中数据流的使用
Code: @Data @ToString @NoArgsConstructor @AllArgsConstructor public class Employee { private Integer ...
- POJ3436 ACM Computer Factory(最大流/Dinic)题解
ACM Computer Factory Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 8944 Accepted: 3 ...
- [shiro] - 怎样使用shiro?
shiro是什么? Shiro是apache旗下的一个开源框架, 它将软件系统的安全认证相关的功能抽取出来, 实现用户身份认证, 权限授权, 加密, 会话管理等功能, 组成一个通用的安全认证框架. 为 ...
- mysql中时间计算函数SQL DATE_SUB()用法
本文为博主原创,未经允许不得转载: 在写sql的时候,经常要在sql中传值时间,对时间进行计算并过滤.之前都是将时间在后台计算好,直接传值给sql, 今天发现,有一个更方便的sql函数,可以简化很多代 ...
- NS3 MyApp Class Reference
官方文档:MyApp 可以在下面的几个例子找到: examples/tutorial/fifth.cc examples/tutorial/seventh.cc examples/tutorial/s ...
- React Native控件之Switch开关
这个组件很简单 主要有两个属性:开.关....呵呵哒,,, import React,{Component}from 'react'; import { AppRegistry, StyleSheet ...
- 通过设置代理,解决服务器禁止抓取,报“java.io.IOException: Server returned HTTP response code: 403 for URL”错误的方法
java.io.IOException: Server returned HTTP response code: 403 for URL: http:// 这个是什么异常呢? 当你使用java程序检索 ...
- js获取url 参数
window.getRequest = function (url) { var theRequest = new Object(); var indexOf = url.indexOf(" ...
- MongoDB(课时29 MapReduce)
3.7.4 MapReduce MapReduce 是整个大数据的精髓所在(实际中别用,因为在MongoDB中属于最底层操作). MapReduce是一种计算模型,简单的说就是将大批量的工作分解执行, ...
- [原][译][physX]phsyX3.3.4官方文档物理引擎基本概念和例子介绍
世界和物体: 物理世界包括集合的场景,每个包含的物体称为演员(Actors) 每个场景(Scene)都定义了自己的参考框架包含了所有的时间和空间 在不同的场景,演员不互相影响 演员通常有三种类型:刚体 ...