Django admin different inlines for change and add view

前端 未结 6 585
醉酒成梦
醉酒成梦 2020-12-13 07:32

I need separate views for add and change page. In add page I\'d like to exclude some fields from inline formset. I\'ve prepared two TabularInline classes, one of them contai

6条回答
  •  没有蜡笔的小新
    2020-12-13 08:11

    It works with Django 1.5+ and seems fine & elegant:

    // admin.py
    class BoxAdmin(ModelAdmin):
    
        inlines = ()
    
        def change_view(self, request, object_id, form_url='', extra_context=None):
            self.inlines = (ItemChangeInline, )
            return super(BoxAdmin, self).change_view(request, object_id)
    
        def add_view(self, request, form_url='', extra_context=None):
            self.inlines = (ItemAddInline, )
            return super(BoxAdmin, self).add_view(request)
    

    hope it can be useful for anyone

提交回复
热议问题