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_template app = Flask(__name__) @app.route('/')
def index():
class Person(object):
name='tttt'
age=18 p = Person()
info = {
'username' :'name',
'gender':"man",
'height' : "",
'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>

flask 渲染jinja2模版和传参的更多相关文章
- 微信小程序——动态渲染页面、路径传参
1.动态渲染页面.改变css.样式必须setData渲染过去 this.setData({ userInfo: app.globalData.userInfo, token: app.glob ...
- Flask初学者:URL(传参,请求,重定向)
URL传参: 良好的URL:视图函数对应的url以/结尾是一种良好url,因为用户在访问的时候无论他有没有加上最后这个斜杠,都是能访问到的,相反,视图函数的url没有以/结尾,用户访问的时候却加上了这 ...
- Flask的Jinja2模版过滤器
Jinja2模版过滤器 过滤器是通过管道符号(|)进行使用的,例如:{{ name|length }},将返回name的长度.过滤器相当于是一个函数,把当前的变量传入到过滤器中,然后过滤器根据自己的功 ...
- flask学习(六):URL传参
1. 参数的作用:可以在相同的URL,但是指定不同的参数,来加载不同的数据 例如:简书上每一篇文章前面的URL相同,只是后面的参数不同 2. 在flask中如何使用参数: 注意: 1) 参数需要放在两 ...
- 2.flask模板--jinja2
1.jinja2模板介绍和查找路径 import os from flask import Flask, render_template # 之前提到过在渲染模板的时候,默认会从项目根目录下的temp ...
- 5 JInja2模版(适用于Django和Flask)
模版 在生产环节下,我们要把后端程序(其实就是python)计算出来的数据和html页面结合起来做,这个时候模版就派上大用处了. Flask下的模版---Jinja2 Jinja是日本寺庙的意思,并且 ...
- flask开启debug模式的两种方法、加载配置文件的两种方法、URL传参的四种方法
from flask import Flask app = Flask(__name__) # app.config.update(DEBUG=True)#开启debug模式 #加载配置文件方法一 # ...
- 2、Flask实战第2天:URL传参
当我们访问网站/的时候,会执行hell_world函数,并把这个函数的返回值返回给浏览器,这样浏览器就显示hello world了 @app.route('/') def hello_world(): ...
- magento controller直接渲染Block 以及传参
class Jago_Deal_IndexController extends Mage_Core_Controller_Front_Action { public function ajaxActi ...
随机推荐
- Windows下安装Ubuntu 16.04双系统
本文已有更新:新文章 [2016-05-09 更新说明: ①:我原本写的Ubuntu 16.04安装博客中在安装系统时,在引导项部分,有一点问题没有注意到,感谢@小段阿誉的指出,在下面我有了说明: ② ...
- C语言itoa()函数和atoi()函数
以下是用itoa()函数将整数转换为字符串的一个例子: # include <stdio.h> # include <stdlib.h> void main (void) { ...
- F. Asya And Kittens 并查集维护链表
reference :https://www.cnblogs.com/ZERO-/p/10426473.html
- BZOJ2809 dispatching 【可并堆】
题目分析: yy一下就知道了,合并用可并堆少个log. 代码: #include<bits/stdc++.h> using namespace std; ; int n,m; int b[ ...
- 安卓Android基础第五天
使用HttpUrlConnection方式提交到服务器2 Get方式:组拼url地址把数据组拼到url上,有大小限制1kb(浏览器)或4kb(http协议) Post方式:post方式提交安全,没有大 ...
- property装饰器
# 需要了解的property的用法 class People: def __init__(self,name): self.__name=name @property def name(self): ...
- [洛谷P1730] 最小密度路径
类型:Floyd 传送门:>Here< 题意:定义一条路径密度 = 该路径长度 / 边数.给出一张$DAG$,现有$Q$次询问,每次给出$X,Y$,问$X,Y$的最小密度路径($N \le ...
- 如何改变Android标准键的颜色?
本文选自StackOverflow(简称:SOF)精选问答汇总系列文章之一,本系列文章将为读者分享国外最优质的精彩问与答,供读者学习和了解国外最新技术,本文为大家讲解如何改变Android标准键的颜色 ...
- bzoj2555(后缀自动机+LCT)
题目描述 (1):在当前字符串的后面插入一个字符串 (2):询问字符串s在当前字符串中出现了几次?(作为连续子串) 你必须在线支持这些操作. 题解 做法很自然,建出后缀自动机,维护每个节点的right ...
- 仓鼠找sugar(LCA)
小仓鼠的和他的基(mei)友(zi)sugar住在地下洞穴中,每个节点的编号为1~n.地下洞穴是一个树形结构.这一天小仓鼠打算从从他的卧室(a)到餐厅(b),而他的基友同时要从他的卧室(c)到图书馆( ...