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)

显示效果如下:

后,执行后状态改变

相关推荐
Sinclair1 小时前
安企CMS的安装-PHPStudy(小皮面板)部署
前端·后端
Sinclair1 小时前
安企CMS的安装-宝塔面板部署
服务器·后端
会飞的特洛伊1 小时前
IAM身份认证
前端·后端
开飞机的舒克_1 小时前
FastAPI 异步 ORM 实战:从核心特性到图书 CRUD 最佳实践
后端
码栈研说1 小时前
Go 语言大白话入门 7 - 函数:把重复代码收起来
后端·程序员
程序员天天困1 小时前
后端视角看 EventBus:发布订阅总线的原理、场景与用法
java·后端
智能体与具身智能2 小时前
TVA 本质内涵与核心特征(系列)
人工智能·python·智能体视觉
ServBay2 小时前
WordPress 核心漏洞 wp2shell,波及超 5 亿网站
后端·php
云雾J视界2 小时前
SST:高频变压器设计实战:铁氧体 vs 纳米晶 vs 非晶,磁性材料怎么选
python·acdc·dab·sst
第一程序员2 小时前
Rust trait 入门:把 AI 客户端抽象成可替换接口
python·rust·github