You can define a custom ModelAdmin and add your own logic:
class UserAdmin(admin.ModelAdmin): def save_model(self, request, obj, form, change): if request.user.is_superuser: obj.is_staff = True obj.save() admin.site.register(User, UserAdmin)
You can find out more about this.
asermax
source share