如何在Django管理中的一页上具有多个表(查询集)。
例如:
当我转到公司页面时,我可以看到公司中的部门列表,也可以看到公司中的员工列表。
答案 0 :(得分:0)
您可以使用InlineModelAdmin objects来实现这一点,尽管如果要进行嵌套内联,则应签出this post。尽管如该帖子所述:
...这将是一种复杂的设计。
您在此处未提供任何代码,所以我能做的就是猜测您的模型关系。
models.py
from django.db import models
class Department(models.Model):
name = models.CharField(max_length=250)
...
class Employee(models.Model):
name = models.CharField(max_length=250)
...
class Company(models.Model):
name = models.CharField(max_length=250)
departments = models.ForeignKey(Department)
employees = models.ForeignKey(Employee)
...
admin.py
from django.contrib import admin
class EmployeeInline(admin.StackedInline):
model = Employee
class DepartmentInline(admin.StackedInline):
model = Department
class CompanyAdmin(admin.ModelAdmin):
list_display = ('name')
inlines = [DepartmentInline, EmployeeInline]
admin.site.register(CompanyAdmin)