12、Django Admin在列表视图页面上显示计算字段

两种方法:

注册模型有两种方式,需要首先添加或者修改admin中的注册模型如下方式

复制代码
@admin.register(Origin)
class OriginAdmin(admin.ModelAdmin):
    list_display = ("name",)

1、在models的模型类中添加函数

复制代码
def hero_count(self,):
    return self.hero_set.count()
def villain_count(self):
    return self.villain_set.count()

2、在admin的管理模型上,修改或者添加管理模型如下所示(两个方法函数):

复制代码
@admin.register(Origin)  
class OriginAdmin(admin.ModelAdmin):  

    def hero_count(self, obj):  
        return obj.hero_set.count()  
      
    def villain_count(self, obj):  
        return obj.villain_set.count()  

    # 以下两句可选择添加
    hero_count.short_description = 'Heroes'  # 设置列标题  
    villain_count.short_description = 'Villains'  # 设置列标题
  
    list_display = ("name", "hero_count", "villain_count")

两种方式显示效果:

相关推荐
IvorySQL14 小时前
PostgreSQL 18 - 时间约束 (Temporal Constraints)
数据库·postgresql·开源
无心水14 小时前
【Python实战进阶】2、Jupyter Notebook终极指南:为什么说不会Jupyter就等于不会Python?
python·jupyter·信息可视化·binder·google colab·python实战进阶·python工程化实战进阶
q***614114 小时前
从MySQL迁移到PostgreSQL的完整指南
数据库·mysql·postgresql
N***738515 小时前
SQL锁机制
java·数据库·sql
小羊在奋斗15 小时前
MySQL表的约束:从基础到核心(附场景+案例)
android·数据库·mysql
Wang's Blog15 小时前
MongoDB小课堂: 文档查询之匹配查询与比较操作符深度解析
数据库·mongodb
cookqq15 小时前
mongodb根据索引IXSCAN 查询记录流程
数据结构·数据库·sql·mongodb·nosql
p***323515 小时前
如何使用C#与SQL Server数据库进行交互
数据库·c#·交互
上班日常摸鱼15 小时前
Shell脚本基础教程:变量、条件判断、循环、函数实战(附案例)
python
h***346315 小时前
Redis安装教程(Windows版本)
数据库·windows·redis