django admin list_display显示外键字段处理办法

参考:

https://www.ywcsb.vip/blog/101.html

list_display展示外键内容

表结构关系

表一:

cpp 复制代码
class Person(models.Model):
    firstname = models.CharField(maxlength=50)
    surname = models.CharField(maxlength=50)

表二

cpp 复制代码
class Friends(models.Model):
    person1 = models.ForeignKey("Person")
    friendship_made = models.DateField()

admin.py

cpp 复制代码
admin中可以写如下内容

class PersonAdmin(admin.ModelAdmin):
    list_display = ["firstname",  "surname", "friendship_made"] # 这里需要注意的是,firstname、surname是我们要在前端展示的内容,自己定义的
    def firstname(self, obj):
        return obj.person1.firstname # person1是我们Person表中外键的字段,firstname是刚才我们自定义的字段,
    firstname.short_description = 'Review' # 对firstname这个做个简短的title。
    def surname(self, obj):
        return obj.person1.surname
    surname.short_description = 'Review'

注意admin和xadmin通用

相关推荐
旦莫1 分钟前
AI驱动的纯视觉自动化测试:知识库里应该积累什么知识内容
人工智能·python·测试开发·pytest·ai测试
子兮曰26 分钟前
Bun v1.3.14 深度解析:Image API、HTTP/3、全局虚拟存储与五十项变革
前端·后端·bun
ltl41 分钟前
Self-Attention:让序列自己看自己
后端
楼兰公子43 分钟前
buildroot 在编译rust时裁剪平台类型数量的方法
开发语言·后端·rust
知识领航员1 小时前
蘑兔AI音乐深度实测:功能拆解、实测表现与适用场景
java·c语言·c++·人工智能·python·算法·github
吴声子夜歌1 小时前
Go——并发编程
开发语言·后端·golang
释怀°Believe1 小时前
Spring解析
java·后端·spring
Cosolar2 小时前
大模型应用开发面试 • 每日三题|Day 003|多Agent系统中的通信协议、冲突解决和一致性保障
人工智能·后端·面试
汪汪大队u2 小时前
续:从 Docker Compose 到 Kubernetes(2)—— 服务优化与排错
网络·后端·物联网·struts·容器
如何原谅奋力过但无声2 小时前
【灵神高频面试题合集06-08】反转链表、快慢指针(环形链表/重排链表)、前后指针(删除链表/链表去重)
数据结构·python·算法·leetcode·链表