flask - 对于烧瓶 appbuilder[modelview],如何在不选择任何项目的情况下添加操作
问题描述
我使用flask-appbuilder,我使用ModelView 像:
class ListView(ModelView):
datamodel = SQLAInterface(mylist)
edit_form = listEditForm
list_title = "List"
list_columns = ["listid",'listtype','listowner', 'creationtime', 'creationempid','changetime', 'changeempid']
related_views = [ListNumberView]
我想在 ListNumberView 上构建一个不需要选择项目的表单操作。
我的意思是我想在 ListNumberView 的列表页面上添加一个按钮,它可以链接到其他页面,不需要选择任何项目。
怎么做。
解决方案
您可以创建一个小部件并将其保存在 /templates/widgets/base_list.html下。添加以下内容。
{% extends 'appbuilder/general/widgets/base_list.html' %}
{% block list_header %}
{{ super() }}
<a href={{url_for('NameModelView' + '.download_csv', **request.args)}} class="btn btn-sm btn-primary"
<i class="fa fa-rocket"></i>
</a>
{% endblock %}
该按钮将呈现在分页、添加和下载按钮旁边的列表标题上。
推荐阅读
- c++ - 使用 reference_wrappers 初始化向量
- postgresql - psycopg2:语句返回码
- vue.js - 在哪里存储多个 vue 组件使用的非常大的“blob”对象
- python - 无法将外部文件中的数据加载到 ipython 模块中
- ios - 在 Objective-C 中加载时将光标移动到预填充 Textview 的开头
- docker - 无法在 clickhouse docker 映像上运行 docker-compose push:资源被拒绝
- linux - 如何按主题编号(文件名的前缀)对文件进行排序并从中创建一个新文件夹?
- c++ - 优雅地声明 2(甚至多)维 std::arrays
- javascript - 将 FirebaseFirestore.DocumentSnapshot 转换为 Node.js 中的列表/地图
- node.js - 如何将文件(在 node.js 中)从内存保存到磁盘上的特定位置?