【问题标题】:Adding fields from another model into admin inlines - Django admin将另一个模型中的字段添加到管理内联中 - Django admin
【发布时间】:2023-03-25 13:28:02
【问题描述】:

考虑一下:

@admin.register(MyModel)
MyModelAdmin(admin.ModelAdmin):

    fieldsets = [
        ('Field1', {'fields': ['field1']}),
        ('Field2', {'fields': ['field2']}),
        ...
        ]
    list_display = ('field1', 'field2')

假设我的管理员有另一个模型:

@admin.register(AnotherModel)
AnotherModelAdmin(admin.ModelAdmin):

    fieldsets = [
        ('Field1', {'fields': ['field3']}),
        ('Field2', {'fields': ['field4']}),
        ...
        ]
    list_display = ('field3', 'field4')

所以,我需要将field3AnotherModelAdmin 显示为MyModelAdmin 内联。

我怎样才能做到这一点?

【问题讨论】:

标签: python django


【解决方案1】:

类似的东西呢?

class AddressAdmin(admin.ModelAdmin):
    fieldsets = [("User", {'fields': ['user_address']}),]
    readonly_fields = ['user_address']

    def user_address(self, obj):
        return obj.user.address
    user_address.short_description = 'User address'

或者您可能想要实际更改另一个模型字段的内容。 在这种情况下,您可以使用类似的东西:How to create a UserProfile form in Django with first_name, last_name modifications?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-10-25
    • 2016-02-18
    • 2017-03-17
    • 2019-10-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多