在admin内联中添加整个模型

时间:2014-02-14 21:30:39

标签: python django django-admin foreign-keys inline-formset

这些是我的模特:

models.py

class Company(models.Model):

    name = models.CharField(
                        max_length=100,
                        verbose_name = _(u'Nome'),
                        )

    contacts = models.ManyToManyField('Person', through='CompanyContact', verbose_name = _(u'Contatos'))

class Person(models.Model):
    name = models.CharField(
                        max_length=200,
                        verbose_name = _(u'Nome'),
                        )

    position = models.CharField(
                            max_length=100,
                            verbose_name = _(u'Cargo'),
                            )

    email = models.EmailField(
                            max_length=100,
                            verbose_name = _(u'Email'),
                            unique=True,
                            )

    employer = models.ForeignKey('Company', verbose_name=_(u'Empresa'))

    addresses = models.ManyToManyField('Address', verbose_name = _(u'Endereços'))
    phones = models.ManyToManyField('Phone', verbose_name = _(u'Telefones'))

在公司管理员中:

admin.py

class CompanyAdmin(admin.ModelAdmin):
    ....

    inlines = (ContactInline,)

    ...

内联

class ContactInline(admin.TabularInline):
    model = CompanyContact
    extra = 0
    verbose_name = u'Representante'
    verbose_name_plural = u'Representantes'

所有这些配置都在公司管理员中生成:

Company Admin

没关系,但我怎样才能在admin内联中添加整个联系人管理员,而不仅仅是名称属性(因为我在个人模型中定义了它的名称)?我想要做的是在管理员内联中按名称保持联系人选择,但并排显示另一个属性。例如:

在admin inline中:

  • 联系方式:Foo
  • 雇主:酒吧(雇主是个人(联系)模式的外键)。

提前致谢!

0 个答案:

没有答案