flask 渲染jinja2模版和传参
渲染模版(html文件)
A、模版文件(html)放入到template目录下,项目启动的时候会从template目录里查找,
B、从flask中导入“render_tempalte”函数
C、在视图函数中,使用render_template函数,渲染模版(只需要填写模版名称即可)
示例:
from flask import Flask,url_for,redirect,render_template #导入模版函数app = Flask(__name__)@app.route('/')
def index():info = { #定义字典'username' :'name','gender':"man",'height' : "178"}#如果有多个参数,可以将所有的参数放到字典中,然后以**kwargs的方式传递进去,info为上面定义的字典return render_template('index.html',**info) #这里直接写模版文件名称,如果在模版文件在temlate/html目录下,则这里需要写'html/index.html'#渲染模版,传参数,如果参数较少,可以直接写关键字参数及值,如下:#return render_template('index.html',username='name',gender="man",height="178") if __name__ == '__main__': app.run(debug=True)if __name__ == '__main__':app.run(debug=True)
index.html
<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><title>Title</title> </head> <body><p>第一个flask页面</p><p>姓名:{{ username }}</p> #使用{{}}用来使用变量<p>height:{{ height }}</p> </body> </html>
模版中的变量说明,示例:
flask_one.py#encoding:utf-8 from flask import Flask,url_for,redirect,render_templateapp = Flask(__name__)@app.route('/') def index():class Person(object):name='tttt'age=18p = Person() info = {'username' :'name','gender':"man",'height' : "178",'person':p,'city':{'bj':"bj",'tj':'tj'}}return render_template('index.html',**info)#return render_template('index.html',username='name',gender="man",height="178")if __name__ == '__main__':app.run(debug=True)index.html <!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><title>Title</title> </head> <body><p>第一个flask页面</p><p>姓名:{{ username }}</p><p>height:{{ height }}</p><hr><p>{{ person.name }}---{{ person.age }}</p> #此处对应上面py中定义的Person类<p>{{ city.bj }}</p> #此处对应字典内的字典,一共两种取值方式,一是常规的字典取值,二是用"." <p>{{ city['tj'] }}</p> </body> </html>
转载于:https://www.cnblogs.com/FRESHMANS/p/8424625.html
flask 渲染jinja2模版和传参相关推荐
- Flask mysql 模版传参_Flask渲染Jinja2模板和传参
### Flask渲染Jinja2模板和传参: 1. 如何渲染模板: * 模板放在`templates`文件夹下 * 从`flask`中导入`render_template`函数. * 在视图函数中, ...
- Flask_day_2渲染Jinja2模板和传参(if判断、for循环、过滤器、继承和block、URL链接)
***Flask渲染Jinja2模板和传参: 1.如何渲染模板 *模板放在'templates'文件夹下 *在'flask'中导入'render_template' *在视频函数中,用'render_ ...
- 微信小程序基础而重要语法整理总结(数据绑定、运算表达式、循环渲染、条件渲染、事件绑定(传参))
目录 数据绑定 运算表达式 循环渲染 条件渲染 事件绑定(传参) 首先对初始化后的小程序目录进行梳理(图来自某机构) 补充: sitemap配置:小程序根目录下的sitemap. json文件用来配置 ...
- 5 JInja2模版(适用于Django和Flask)
模版 在生产环节下,我们要把后端程序(其实就是python)计算出来的数据和html页面结合起来做,这个时候模版就派上大用处了. Flask下的模版---Jinja2 Jinja是日本寺庙的意思,并且 ...
- Vue路由动态渲染和动态传参
一.动态渲染路由 // router/routerjs{ path: '/movie/1', component: Movie}, //app组件<router-link to="/m ...
- 【Flask】Jinja2模板的使用及控制语句
Jinja2模板 在前面的实例中,视图函数的主要作用是生成请求的响应,这是最简单请求.实际上,视图函数有两个作用: 处理业务逻辑 返回响应内容 在大型应用中,把业务逻辑和表现内容放在一起,会增加代码的 ...
- Flask之jinja2
模板的介绍 网站如何向客户端发送一个漂亮的页面呢 html.css.js 但是如果将这些字段都写到视图中,作为HttpResponse()的参数响应给客户端,将会有以下问题 视图部分代码臃肿, 耦合度 ...
- flask渲染图像_用于图像推荐的Flask应用
flask渲染图像 After creating a Python-based machine learning application you might want to get it runnin ...
- vue 传参 微信_vue-router 你可能忽略的知识点
vue-router相信大家都不陌生,并且很多都有实战经验.可能有很多你忽略的一些点. 1.丑陋的hash值 vue-router 默认 hash 模式 -- 使用 URL 的 hash 来模拟一个完 ...
最新文章
- 爬一爬 iPhone 11为何嘴上说真丑,销量却真香?
- 【Maven学习】Nexus私服代理其他第三方的Maven仓库
- C# 字符串大小写混合转换(同时进行)
- Linux编程下open()函数的用法
- 配置安全的Impala集群集成Sentry
- consolel API大全-附测试结果
- Visual Studio Code设置断点时出现Unverified breakpoint该咋办
- tomcat webapps目录文件都能删吗_详细测试实现Tomcat根域名访问的场景,看这篇文章就够了...
- python实现mini-batch_Mini-Batch 、Momentum、Adam算法的实现
- 触发起名字使用正则_好名字一定在字音、字形、字意上比较吉利
- iOS输入框禁止输入emoji表情
- win10 oracle fonts,win10字体无法粘贴到fonts怎么办 字体无法粘贴到fonts的解决方法...
- Linux三剑客之awk精讲
- 生信过程中的各种文件格式
- 易基因 | 表观技术:单细胞及微量细胞全基因组重亚硫酸盐甲基化测序(scWGBS)
- GitHub 用户专属福利,实际到账 3K+,Namebase Airdrop
- 机器学习从入门到创业手记-1.3	必备的工具与框架
- 五款免费同步备份软件介绍
- 吱口令代付|淘宝天猫教程|找人代付|淘宝代付源码
- OpenCV的Scalar对象怎样初始化,如何取分量值,如何与标量相乘?
热门文章
- ASP.NET网络编程中经常用到的27个函数集
- 不学Python迟早会被淘汰?Python真有这么好的前景?
- 谷歌为雇人监听智能助手录音辩护 承诺对用户数据泄露进行调查
- 揭密 extern C
- 关于i++和++i的实验结果解释
- php无表单上传文件,php – 如何使用没有实体类的表单上传文件
- Java锁消除和锁粗化
- 如何编写无法维护的代码_编写可维护的前端代码
- python 结构体数组 定义_一篇文章弄懂Python中所有数组数据类型
- 从Linux上查看接口路由IP(吓一跳ip)