python - How to prevent super user deletion in Django admin? -


in django admin have 4 users , super user. have users staff status have limited access , cannot delete/view/edit users admin has authority on every other users , models. want superuser able access users data , edit/modify/delete them not want superuser able delete himself/herself. superuser can delete himself. there way disable superuser delete himself/herself in django?? grateful.

thanks

do not use has_delete_permission() override not being called on every object when perform delete action changelist.

use signals it. add models.py

from django.db.models.signals import pre_delete django.dispatch.dispatcher import receiver django.contrib.auth.models import user django.core.exceptions import permissiondenied  @receiver(pre_delete, sender=user) def delete_user(sender, instance, **kwargs):     if instance.is_superuser:         raise permissiondenied 

the drawback of method nobody able delete super user. have set users attribute "is_superuser" false before can delete it.


Comments

Popular posts from this blog

Unable to remove the www from url on https using .htaccess -