@1kbfree
2018-05-16T23:11:06.000000Z
字数 2096
阅读 1127
flask
首先创建一个
templates
文件夹,用于存放模板的(不懂百度)。
index.html
代码:
app的代码:
from flask import Flask,render_template
app = Flask(__name__)
@app.route('/')
def index():
return render_template('index.html') #如果访问了127.0.0.1就会打开这个index.html文件,然后呈现在页面上
if __name__ == '__main__':
app.run(debug=True,host='127.0.0.1',port=80)
from flask import Flask,render_template
app = Flask(__name__)
@app.route('/')
def index():
return render_template('index.html',name = 'iamfree',age = 16) #就是说把这里的内容传递到html里
if __name__ == '__main__':
app.run(debug=True,host='127.0.0.1',port=80)
index.php文件代码:
结果:
那么这里有一个问题,就是我们要传递给模板的参数多了,我们该怎么办呢,下面来看下操作
from flask import Flask,render_template
app = Flask(__name__)
@app.route('/')
def index():
context = {}
context['name'] = 'iamfree'
context['age'] = 16
return render_template('index.html',**context) #这里里的**context等价于name=iamfree,age=16
if __name__ == '__main__':
app.run(debug=True,host='127.0.0.1',port=80)
代码中**
的用法:
from flask import Flask,render_template
app = Flask(__name__)
@app.route('/')
def index():
context = {}
class Obj():
name = 'iamfree'
age = 16
o = Obj
context['obj'] = o
return render_template('index.html',**context) #就是说把这里的内容传递到html里
if __name__ == '__main__':
app.run(debug=True,host='127.0.0.1',port=80)
from flask import Flask,render_template
app = Flask(__name__)
@app.route('/index/<option>')
def index(option):
context = {}
context['option'] = option
return render_template('index.html',**context)
if __name__ == '__main__':
app.run(debug=True,host='127.0.0.1',port=80)
模板语句:if判断
模板for循环
from flask import Flask,render_template
app = Flask(__name__)
@app.route('/')
def index():
users = {
'name':'iamfree',
'age':16
}
return render_template('index.html',users=users)
if __name__ == '__main__':
app.run(debug=True,host='127.0.0.1',port=80)
结果:
过滤器格式: 变量名|过滤器
{ var | reverse}} 对var进行反转
{{ "hello world" | reverse | upper }} 把helloword反转后,在全部大写
safe:禁用转义
capitalize:把变量值的首字母转成大写,其余字母转小写
lower:把值转成小写
upper:把值转成大写
title:把值中的每个单词的首字母都转成大写
reverse:字符串反转
format:格式化输出
striptags:渲染之前把值中所有的HTML标签都删掉
truncate: 字符串截断
first:取第一个元素
<p>{{ [1,2,3,4,5,6] | first }}</p>
last:取最后一个元素
<p>{{ [1,2,3,4,5,6] | last }}</p>
length:获取列表长度
<p>{{ [1,2,3,4,5,6] | length }}</p>
sum:列表求和
<p>{{ [1,2,3,4,5,6] | sum }}</p>
sort:列表排序
<p>{{ [6,2,3,1,5,4] | sort }}</p>