文章内容
2018/7/31 12:17:55,作 者: 黄兵
flask显示消息的方法
后台保存的数据是否成功要向前台页面显示,在Flask中显示消息的通用方法是:flush。
具体后台实现代码:
@manage.route('/admin_add_classification', methods=['GET', 'POST']) @login_required @admin_required def admin_add_classification(): # 获取当前用户id id = current_user.id # 页面信息 user_info = User.query.get_or_404(id) title = '首 页' page_name = 'Dashboard' page_features = 'dashboard & statistics' # form form = AddClassificationForm() if form.validate_on_submit(): file = form.classification_icon.data new_filename = file_upload(file) material_classification = MaterialClassification(classification_name=form.classification_name.data, classification_icon=new_filename) db.session.add(material_classification) db.session.commit() flash(u'保存成功!', 'success') return render_template('manage/admin_material_classification.html', user_info=user_info, name=title, pageName=page_name, description=page_name, pageFeatures=page_features, form=form)
之后前端显示代码:
<div class="container-fluid alter_clear">
{% with messages = get_flashed_messages(with_categories=true) %}
{% if messages %}
{% for category, message in messages %}
<div class="alert alert-{{ category }}">
<button type="button" class="close" data-dismiss="alert">×</button>
{{ message }}
</div>
{% endfor %}
{% endif %}
{% endwith %}
</div>
上面可以写成一个通用类,实现复用。
要使用一个自定义的分类,只要使用 flash() 函数的第二个参数:
在模板中,您接下来可以调用 get_flashed_messages() 函数来返回这个分类,在下面的情景中,循环看起来将会有一点点不一样:
这仅仅是一个渲染闪现信息的例子,您可也可以使用分类来加入一个诸如<strong>Error:</strong> 的前缀给信息。
参考资料:消息闪现
黄兵个人博客原创。
转载请注明出处:黄兵个人博客 - flask显示消息的方法
评论列表