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通用

相关推荐
HashTang2 分钟前
【AI 编程实战】第 3 篇:后端小白也能写 API:AI 带我 1 小时搭完 Next.js 服务
前端·后端·ai编程
言之。5 分钟前
Dropbear远程连接
python
白宇横流学长10 分钟前
基于SpringBoot实现的电子发票管理系统
java·spring boot·后端
白宇横流学长12 分钟前
基于SpringBoot实现的智慧就业管理系统
java·spring boot·后端
用户255425818021639 分钟前
Spring AI(二):如何在使用的时候指定角色,使用模板
后端
dhdjjsjs1 小时前
Day34 PythonStudy
python
YDS8291 小时前
SpringCloud —— 黑马商城的项目拆分和Nacos
spring boot·后端·spring cloud
卜锦元1 小时前
Golang中make()和new()的区别与作用?
开发语言·后端·golang
疯狂的程序猴1 小时前
iOS 应用保护工具怎么选?从攻击面拆解到工具职责划分的全链路实战指南
后端
中文很快乐1 小时前
从零到一:用 SpringBoot 打造 RESTful API 实战指南
java·spring boot·后端·restful