1.消息闪烁
- 在需要闪烁消息时,使用flash函数保存闪烁消息
@app.route('/', methods=['GET', 'POST'])
def index():
# 创建表单对象
form = NameForm()
# 判断是否是有效的提交
if form.validate_on_submit():
last_name = session.get('name')
if last_name and last_name != form.name.data:
flash('大哥,又换签名了^_^')
session['name'] = form.name.data
return redirect(url_for('index'))
name = session.get('name')
# 在模板文件中渲染表单
return render_template('form2.html', form=form, name=name)
- 在模板文件中提供get_flashed_messages函数获取闪烁消息并渲染:
{% for message in get_flashed_messages() %}
<div class="alert alert-warning alert-dismissible" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span>
</button>
{{ message }}
</div>
{% endfor %}
说明:上面是从bootstrap粘贴的可消失的警告框。
2.flask-moment
- 说明:专门负责数据本地化显示的扩展库,使用非常方便。
- 安装:pip install flask-moment
- 使用:
-
- python代码:
from flask_moment import Moment
moment = Moment(app)
@app.route('/moment/')
def mom():
from datetime import datetime, timedelta
current_time = datetime.utcnow() + timedelta(seconds=-360)
return render_template('mom.html', current_time=current_time)
-
- 模板文件:
{# 加载jQuery #}
{{ moment.include_jquery() }}
{# 加载moment #}
{{ moment.include_moment() }}
{# 设置语言 #}
{{ moment.locale('zh-CN') }}
{# 简单的格式化时间显示 #}
<div>时间:{{ moment(current_time).format('LLLL') }}</div>
<div>时间:{{ moment(current_time).format('LLL') }}</div>
<div>时间:{{ moment(current_time).format('LL') }}</div>
<div>时间:{{ moment(current_time).format('L') }}</div>
{# 自定义格式化时间显示 #}
<div>自定义:{{ moment(current_time).format('YYYY-MM-DD HH:mm:ss') }}</div>
{# 显示时间差 #}
<div>发表于:{{ moment(current_time).fromNow() }}</div>