14、Django Admin的“Action(动作)”中添加额外操作

如图红框增加操作

将以下代码添加到HeroAdmin类中

python 复制代码
actions = ["mark_immortal"]
def mark_immortal(self, request, queryset):
    queryset.update(is_immortal=True)

修改后完整代码如下:

python 复制代码
@admin.register(Hero)
class HeroAdmin(admin.ModelAdmin):
    list_display = ("name", "is_immortal", "category", "origin", "is_very_benevolent")
    list_filter = ("is_immortal", "category", "origin", IsVeryBenevolentFilter)
    def is_very_benevolent(self, obj):
        return obj.benevolence_factor > 75
    is_very_benevolent.boolean = True
    
    actions = ["mark_immortal"]
    
    def mark_immortal(self, request, queryset):
        queryset.update(is_immortal=True)

显示效果如下:

后,执行后状态改变

相关推荐
zone773913 分钟前
006:RAG 入门-面试官问你,RAG 为什么要切块?
后端·算法·面试
狗头大军之江苏分军37 分钟前
消耗 760万 Token 后,一文看懂了“小龙虾” OpenClaw 和 OpenCode 的区别
前端·后端
前端小张同学1 小时前
一次支付回调引发的「血案」:我是如何用 Redis + AOP 实现接口幂等的
后端
孟沐2 小时前
Java IO 流 - FileOutputStream & ObjectOutputStream 大白话解析
后端
lichenyang4532 小时前
Node.js文件上传原理
后端
码路飞2 小时前
FastMCP 实战:一个 .py 文件,给 Claude Code 装上 3 个超实用工具
python·ai编程·mcp
Java水解2 小时前
微服务架构下Spring Session与Redis分布式会话实战全解析
后端·spring
Moe4882 小时前
如何使用 Spring Cache 结合 Redis 和 Caffeine 构建二级缓存机制
后端
Json_Lee3 小时前
2026 年了,多 Agent 编码该怎么选?agent-team vs Claude Agent Teams vs Claude Squad vs Met
前端·后端·vibecoding
陈随易3 小时前
刚上市就断货?如此火爆的编程显示器到底有什么魔力
前端·后端·程序员