flask-admin 在modelview 默认视图下重写create_model_actions来实现列表数据的批量处理actions

背景:

在使用flask-admin 中modelview默认的视图时,有时需要扩展额外的action来实现特定效果,如添加基于列表的批量处理事件。

材料:

制作:

先来效果:

再上代码:

复制代码
 # 通过重写create_model_actions 扩展actions,即 默认视图中"选中的"下面出现
    def create_model_actions(self):
        return [
            action('read_news_action', '运行选中指令', self.read_action_view)
        ]
    
    @action('read_news_action', '运行选中指令', confirmation='确认要批量运行选中所有指令吗?')
    def read_action_view(self, ids):
        # Your custom action logic here
        ddlist = read_news_view(ids)
        if ddlist:
            self.session.add_all(ddlist)
            self.session.commit()
        print(f'Custom action executed for IDs: {ids}')

思考:

1、我们可以通过在flask-admin 的modelview视图中重写create_model_actions 的方式来实现批量业务的处理。

2、由于flask-admin官方资料并不完善,度娘搜索到的资料非常有限,只能通过阅读源码来学习较为深度的flask-admin,本create_model_actions方法重写是通过阅读源码中list.html得到的启示,进而找到了该方法

相关推荐
维度攻城狮3 小时前
实现在Unity3D中仿真汽车,而且还能使用ros2控制
python·unity·docker·汽车·ros2·rviz2
简简单单做算法3 小时前
基于mediapipe深度学习和限定半径最近邻分类树算法的人体摔倒检测系统python源码
人工智能·python·深度学习·算法·分类·mediapipe·限定半径最近邻分类树
hvinsion4 小时前
基于PyQt5的自动化任务管理软件:高效、智能的任务调度与执行管理
开发语言·python·自动化·自动化任务管理
Vitalia5 小时前
从零开始学Rust:枚举(enum)与模式匹配核心机制
开发语言·后端·rust
飞飞翼5 小时前
python-flask
后端·python·flask
林九生6 小时前
【Python】Browser-Use:让 AI 替你掌控浏览器,开启智能自动化新时代!
人工智能·python·自动化
草捏子6 小时前
最终一致性避坑指南:小白也能看懂的分布式系统生存法则
后端
猿界零零七7 小时前
执行paddle.to_tensor得到全为0
python·paddle
一个public的class7 小时前
什么是 Java 泛型
java·开发语言·后端
青花瓷7 小时前
智谱大模型(ChatGLM3)PyCharm的调试指南
人工智能·python·大模型·智谱大模型