def get_form(self, request, obj=None, **kwargs):
        defaults = {}
        if obj is None and hasattr(self, 'add_form'):
            defaults.update({
                'form': self.add_form,
                'fields': admin.util.flatten_fieldsets(self.add_fieldsets),
            })
        defaults.update(kwargs)
        return super(EnhancedModelAdmin, self).get_form(request, obj, **defaults)
Use special form when add_form is supplied
dataset/ETHPy150Open baskoopmans/djcommon/djcommon/admin.py/EnhancedModelAdmin.get_form