django admin如何操作OneToMany相关对象(不仅仅是内联)

时间:2017-06-21 17:05:54

标签: django django-admin one-to-many

我有2个型号。 一个人有另一个外键。

说:

class Organization(models.Model):
    title = models.CharField(max_length=300)

class User(models.Model):
    name = models.CharField(max_length=300)
    organization = models.ForeignKey(Organization)

我想在organizationAdmin中显示在当前组织中工作的所有用户,例如更改链接列表。

应该可以

  • 添加新用户
  • 选择现有用户(与当前组织无关)并将其组织设置为当前

无需在线编辑

就像userAdmin中的权限+添加和更改

一样

有没有现成的解决方案?不要手工制作表格

1 个答案:

答案 0 :(得分:0)

您可以使用exclude

执行此操作
class UserInline(admin.TabularInline):
    model = User
    exclude = ['name', 'other_fields']

或者您可以使用ManyToMany关系:

class User(models.Model):
    name = models.CharField(max_length=300)   

class Organization(model.Model):
    title = models.CharField(max_length=300)
    users = models.ManyToManyField(User)