Django admin overwriting fieldsets -
Django admin overwriting fieldsets -
suppose have 1 class in model several other classes inherited. define admin class command layout in admin interface.
we can create other admin classes inherite (just did in model), how can overwrite fieldsets add together new values?
example:
in model file:
class a(models.model): field1 = models.textfield(..) field2 = models.textfield(..) class b(a): field3 = models.textfield(..)
in admin file:
class a_admin(admin.modeladmin): fieldsets = ( (none, { 'fields': (( 'field1', 'field2')) }), ) class b_admin(a_admin): pass # here notice takes fields a_admin, add together field 3 without rewriting fieldsets admin.site.register(a, a_admin) admin.site.register(b, b_admin)
the resulting fieldsets :
( (none, { 'fields': (( 'field1', 'field2')) }), ('specific b', { 'fields': ('field3') }), )
thanks in advance,
linoha
i don't know if neat solution should want.
class a_admin(admin.modeladmin): fieldsets = [ (none, {'fields': ['field1', 'field2']}), ] class b_admin(a_admin): fieldsets = [ ('specific b', {'fields': ['field3', 'field4']}), ] fieldsets.insert(0, a_admin.fieldsets[0])
django-admin
Comments
Post a Comment