Django在一个页面上管理多个查询集

问题描述 投票:1回答:1

如何在django admin中的一个页面上拥有多个表(queryset)。

例如:

当我进入公司页面时,我可以看到公司的部门列表,我也可以看到公司的员工列表。

django django-admin
1个回答
0
投票

您可以使用InlineModelAdmin objects来实现这一点,但如果您想要嵌套内联,则应该查看this post。虽然该帖子说:

......这将是一种令人费解的设计。

你没有在这里提供任何代码,所以我能做的最好就是猜你的模型关系。

models.朋友

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.朋友

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)
© www.soinside.com 2019 - 2024. All rights reserved.