显示嵌套模型的InlineModelAdmin

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了显示嵌套模型的InlineModelAdmin相关的知识,希望对你有一定的参考价值。

我使用OneToOneFields嵌套模型,并希望在一个ModelAdmin中使用InlineModelAdmin表单指向嵌套模型...

models.py:

class User(models.Model):
    username = models.CharField(max_length=128)
    password = models.charField(max_length=128)

class IdentityProof(models.Model):
    user = models.OneToOneField(User, on_delete=models.PROTECT, related_name='proof')
    proof_identity = models.FileField(upload_to='uploads/%Y/%m/%d/')

class Company(models.Model):
    user = models.OneToOneField(User, on_delete=models.PROTECT, related_name='company')
    name = models.CharField(max_length=128)

class Person(models.Model):
    user = models.OneToOneField(User, on_delete=models.PROTECT, related_name='person')
    name = models.CharField(max_length=128)

admin.py:

class IdentityProofInline(admin.TabularInline):
    model = IdentityProof

@admin.register(Company)
class CompanyAdmin(admin.ModelAdmin):
    inlines = [IdentityProofInline]

@admin.register(Person)
class PersonAdmin(admin.ModelAdmin):
    inlines = [IdentityProofInline]

对于CompanyAdmin或PersonAdmin,我想显示其用户的IdentityProof。我怎样才能做到这一点 ?

我试图使用fk_name = 'user_proof或其他组合,但它不起作用......

谢谢。

答案

没有外部包装,这是不可能的。 见Django Nested InlineDjango Nested Admin

以上是关于显示嵌套模型的InlineModelAdmin的主要内容,如果未能解决你的问题,请参考以下文章

InlineModelAdmin对象的学习

覆盖 Django InlineModelAdmin 上的 save_model

如何从管理上下文数据中找到InlineModelAdmin?

Django inlinemodeladmin 验证 - 但具有通用关系

导轨中的三重嵌套模型形式显示错误

嵌套 json 对象的颤振模型